Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
57 changes: 36 additions & 21 deletions docs/ZennoDroid/API/Action.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -32,19 +32,19 @@ var action = instance.DroidInstance.Action;
action.SelectByIndex(0);
```
_______________________________________________
### Выбор устройства по имени ADB.
### Выбор устройства по имени.
```csharp
void SelectByName(string name)
```
*Параметры:*
```csharp
string name // Передаем имя ADB устройства, которое хотим выбрать.
string name // Передаем имя устройства, которое хотим выбрать.
```

#### Пример.
```csharp
var action = instance.DroidInstance.Action;
action.SelectByName("adbName");
action.SelectByName("deviceName");
```
_______________________________________________
### Выбор устройства по его названию.
Expand Down Expand Up @@ -96,48 +96,63 @@ action.SelectRandom("Samsung");

Тогда под маску `"Samsung"` попадут **Samsung_S23_Android14** и **Samsung_A51_Android12**. Так что после фильтрации метод случайно выберет одно из этих устройств.
_______________________________________________
### Запускаем устройство, которое ранее выбрали.
### Выбор случайного устройства из списка
```csharp
void Start()
```
void SelectRandom(IEnumerable<string> source)
```

#### Пример.
*Параметры:*
```csharp
var action = instance.DroidInstance.Action;
action.SelectByTitle("Name"); // Выбираем устройство.
action.Start(); // Запускаем.
IEnumerable<string> source // Список имён/названий устройств, из которых нужно выбрать случайное.
```
_______________________________________________
### Запускаем выбранное устройство с применением данных из нашего профиля.

#### Пример
```csharp
void Start(bool applyProfile)
```
Данные устройства (разрешение экрана, CPU и т.д.) будут браться из профиля ZennoDroid (вкладка **Текущий профиль**).
var action = instance.DroidInstance.Action;
var devices = new List<string>
{
"Pixel_7_Android14",
"Samsung_S23_Android14",
"Xiaomi_RedmiNote12_Android13",
"Samsung_A51_Android12",
"Google_Nexus5X_Android8"
};
action.SelectRandom(devices);
```
_______________________________________________
### Запускаем устройство, которое ранее выбрали.
```csharp
void Start()
```

*Параметры:*
*Перегрузка:*
```csharp
bool applyProfile
// Передаем True, если хотим использовать данные из профиля ZennoDroid.
// Данные устройства (IMEI, Android ID и т.д.) будут браться из вкладки Текущий профиль.
```

*Перегрузка:*
```csharp
string captureScreenMethod // Передаем тип захвата изображения.

// Варианты: "h264", "mjpeg" или "off".
```

#### Пример.
```csharp
//#1
var action = instance.DroidInstance.Action;
action.SelectByTitle("Name"); // Выбираем устройство.
action.Start(); // Запускаем.
```
```csharp
var action = instance.DroidInstance.Action;
action.SelectByTitle("Name"); // Выбираем устройство.
action.Start(true); // Запускаем с данными из профиля ZD

//#2
```
```csharp
var action = instance.DroidInstance.Action;
action.SelectByTitle("Name"); // Выбираем устройство.
action.Start(true, "mjpeg"); // Запускаем c captureScreenMethod
action.Start("mjpeg"); // Запускаем c captureScreenMethod
```
_______________________________________________
### Останавливаем выбранное запущенное устройство.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
sidebar_position: 8
sidebar_position: 20
sidebar_label: Device Filter
title: Device Filter | Документация ZennoDroid | ZennoLab
description: Device Filter - раздел официальной документации ZennoDroid от ZennoLab. Подробные инструкции, примеры использования и руководство по настройке
Expand All @@ -10,32 +10,38 @@ import DisclaimerNotice from '@site/src/components/DisclaimerNotice';
<DisclaimerNotice />

## Описание.
**`IDeviceFilter`**
**`IDeviceFilter`**

Используется для работы с настройками фильтров при генерации JSON-данных для подмены информации об устройстве через LSPosed.

Этот API позволяет задавать параметры фильтрации, чтобы подбирать нужные данные при генерации устройств.

### Свойства.
- **Страна**
```csharp
string Country { get; set; }

// Например: us|ru|de|fr
```

- **Производитель телефона**.
```csharp
string Manufacturer { get; set; }

// Например: Samsung|Pegatron|BYD|OPPO|Inventec|Foxconn|Honor|Huawei|Lenovo
// Например: Samsung|Xiaomi
```

- **Бренд телефона**.
```csharp
string Brand { get; set; }

// Например: Samsung|Xiaomi|OPPO|Realme|Honor|OnePlus|Huawei|Nothing
// Например: Redmi|Poco
```

- **Модель телефона**.
```csharp
string Model { get; set; }

// Например: SamsungS24Ultra|Xiaomi14Pro|OPPOFindX7|RealmeGT5Pro|HonorMagic6Pro|OnePlus12|HuaweiP60Pro|Nothing(2)
// Например: SM-A505F
```

- **Версия Android**.
Expand All @@ -47,11 +53,19 @@ string Version { get; set; }

#### Примеры:
```csharp
var settings = instance.DroidInstance.Settings;

var filter = new DeviceFilter(); // Создаем фильтр с данными для генерации
filter.Brand = "Samsung|Xiaomi|OPPO"; // Выбор устройств
filter.Version = "10|11|12|13"; // Выбор версии Android
var json = settings.GenerateRandomLSPosedSettings(project.Profile.Country, filter); // Генерируем случайные данные для подмены LSPosed на основание фильтра
settings.SetLSPosedSettings(json); // Делаем подмену данных
```
var filter = new DeviceFilter();
filter.Country = "us"; // Выбрать страну
filter.Version = "12|13|14|15"; // Выбрать версию Android
filter.GpuVendor = "Qualcomm|ARM"; // Выбрать производителя GPU

var options = new DeviceOptions();
options.AddCanvasNoise = true; // Добавить шум для Canvas
options.AddGpu = true; // Добавить поддельный GPU

var json = instance.DroidInstance.Settings.GenerateRandomLSPosedSettings(filter, options); // Сгенерировать случайные данные для подмены LSPosed на основе фильтра и опций
instance.DroidInstance.Settings.SetLSPosedSettings(json); // Применить подменённые данные
```
_______________________________________________
## Полезные ссылки.
- [**IDroidSettingsAPI**](./Settings).
- [**IDeviceOptions**](./DeviceOptions).
62 changes: 62 additions & 0 deletions docs/ZennoDroid/API/DeviceOptions.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
---
sidebar_position: 21
sidebar_label: Device Options
title: Device Options | Документация ZennoDroid | ZennoLab
description: Device Options - раздел официальной документации ZennoDroid от ZennoLab. Подробные инструкции, примеры использования и руководство по настройке
---
import DisclaimerNotice from '@site/src/components/DisclaimerNotice';

# Device Options
<DisclaimerNotice />

## Описание.
**`IDeviceOptions`**

Используется вместе с DeviceFilter при генерации JSON-данных для подмены информации об устройстве в LSPosed.

С помощью этого класса можно настроить уровни подмены помимо базовой фильтрации устройств.

### Свойства
- **Шум Canvas**
Добавляет случайный шум к Canvas-фингерпринтингу. Предотвращает одинаковые хэши canvas.
```csharp
bool? AddCanvasNoise { get; set; }
```

- **Подмена GPU**
Включает подмену GPU/WebGL информации. Рандомизирует строки GPU vendor/renderer в соответствии с DeviceFilter.GpuVendor.
```csharp
bool? AddGpu { get; set; }
```

- **Доступ к WebView**
Предоставляет возможность выполнять JavaScript в приложениях, содержащих WebView.
По умолчанию доступ к WebView в приложениях, не являющихся браузерами, всегда выключен. Данная настройка позволяет получить доступ к HTML-разметке не только браузеров, но и приложений использующих WebView. Для этого в дереве элементов должен присутствовать элемент android.webkit.WebView.
```csharp
bool? AddWebView { get; set; }
```

- **Эмуляция WiFi**
Эмулирует WiFi-соединение. Используется для прошивок, которые не видят наличия интернет-подключения при отключенном WiFi.
```csharp
bool? AddWiFiEmulation { get; set; }
```

#### Примеры:
```csharp
var filter = new DeviceFilter();
filter.Country = "us"; // Выбрать страну

var options = new DeviceOptions();
options.AddCanvasNoise = true; // Добавить шум Canvas
options.AddGpu = true; // Добавить поддельный GPU
options.AddWebView = true; // Включить доступ JavaScript к WebView
options.AddWiFiEmulation = true; // Эмулировать WiFi при отключенном интернете

var json = instance.DroidInstance.Settings.GenerateRandomLSPosedSettings(filter, options); // Сгенерировать случайные данные для подмены LSPosed на основе фильтра и опций
instance.DroidInstance.Settings.SetLSPosedSettings(json); // Применить подменённые данные
```
_______________________________________________
## Полезные ссылки.
- [**IDroidSettingsAPI**](./Settings).
- [**IDeviceFilter**](./DeviceFilter).
Loading