Действия с виртуальной машиной (ZD)

Оглавление


Описание

Данный экшен служит для взаимодействия непосредственно с виртуальной машиной (ВМ).

Действий много, поэтому статья логически разбита на две группы:

  1. Действия над виртуальной машиной - создание, удаление, запуск, клонирование и т.д.

  2. Настройки виртуальной машины - установка языка, прокси, режим рендеринга, разрешение и т.д.


Как добавить действие в проект?

Через контекстное меню Добавить действиеAndroidДействия с виртуальной машиной


Действия над виртуальной машиной (ВМ)

В данной секции описаны “внешние” действия с ВМ - создание, удаление, запуск, остановка, копирование, импорт, экспорт и др.

Выбрать

С помощью данного действия можно выбрать ВМ, с которой будет вестись работа.

Полное название или индекс - имя виртуальной машины (1), как оно указано в окне Мульти-Memu, или индекс (2) (нумерация индексов с нуля).
Если здесь ничего не указать, то будет выбрана случайная ВМ.

Положить индекс\имя ВМ в переменную - позволяет сохранить имя\индекс выбранной ВМ в переменные.

Подробнее о том как правильно выбрать и запустить ВМ можно прочитать в статье Выбор и запуск виртуальной машины


Запустить\Перезапустить

Запускает выбранную в предыдущей функции ВМ.
Либо перезапускает уже работающую ВМ.

ВАЖНО: перед запуском обязательно нужно Выбрать ВМ, с которой будет работать программа.
Подробнее о том как правильно выбрать и запустить ВМ можно прочитать в статье Выбор и запуск виртуальной машины


Остановить

Останавливает запущенную ВМ.


Создать

Данная функция позволяет создать новую ВМ.
При создании будут сгенерированы новые данные для устройства (IMEI, MAC и др.).

Создание новой виртуальной машины ресурсоёмкая операция.
Возможно Вам будет достаточно сделать сброс настроек текущей ВМ и сгенерировать новые идентификационные данные (описано ниже в пункте Сброс)

ВАЖНО: если Вы хотите сразу запустить только что созданную ВМ, её обязательно нужно Выбрать.

Версия - версия Android создаваемой ВМ. Доступные значения - 5.1, 7.1, 7.1 x64 (только для x64 систем).
По умолчанию доступна только версия 7.1, чтобы иметь возможность работать с другими версиями их нужно предварительно скачать. Подробнее в статье - Установка ZennoDroid и MEmu

Название - имя для создаваемой ВМ.
Можно оставить поле пустым, тогда будет выбрано значение по умолчанию.

Положить индекс\имя ВМ в переменную - позволяет сохранить имя\индекс создаваемой ВМ в переменные.


Переименовать

Изменение имени текущей ВМ.

ВМ должна быть выключена при переименовании!

Изменяется имя ВМ, которая была выбрана с помощью функции “Выбрать” (описана в начале статьи).


Клонировать

Создание копии текущей ВМ

ВМ должна быть выключена при клонировании!

Название - имя для созданной копии ВМ.

Можно оставить поле пустым, тогда будет выбрано значение по умолчанию.

Положить индекс\имя ВМ в переменную - позволяет сохранить имя\индекс созданной копии ВМ в переменные.


Импортировать

Позволяет загрузить ВМ из файла (создать файл можно с помощью функции Экспортировать, описана ниже).

Путь к файлу (ova) - путь к файлу, в котором сохранена ВМ

Название - имя для импортированной ВМ.

Можно оставить поле пустым, тогда будет выбрано значение по умолчанию.

Положить индекс\имя ВМ в переменную - позволяет сохранить имя\индекс импортированной ВМ в переменные.


Экспортировать

Данная функция создаёт полную копию ВМ, со всеми настройками и сохраняет в файл с расширением .ova. Данный файл можно перенести на другой компьютер и подключить с помощью функции Импортировать (описана выше).

ВМ должна быть выключена!

Путь к файлу (ova) - путь, куда будет сохранена ВМ.


Полный сброс

Сбрасывает состояние текущей ВМ до состояния по умолчанию.
Сгенерированные при создании идентификаторы устройства останутся неизменны.

Полный сброс нужен, чтобы не удалять/создавать машину заново, т.к. создание очень ресурсозатратное действие и довольно долго выполняется. Полный сброс без восстановления системного раздела намного быстрее.

Все приложения, файлы и данные будут удалены! Данная функция сродни factory reset на телефонах.

ВМ должна быть выключена для применения настроек!

Восстановление системного раздела - нужно ли восстанавливать системный раздел?

При включении опции Восстановление системного раздела сброс будет происходить дольше.

Ни одно приложение без прав суперпользователя не может ничего записать в системный раздел. Если Вы ставите мессенджер, то никаких записей в системе нет и не будет.

Запись в системный раздел происходит только явным образом. Например, если Вы установили Xposed Framework - тогда, чтобы восстановить машину в изначальное состояние потребуется поставить галочку.


Удалить

Позволяет удалить ВМ.

ВМ должна быть выключена для применения настроек!

Полное название или индекс - имя виртуальной машины (1), как оно указано в окне Мульти-Memu, или индекс (2) (нумерация индексов с нуля).


Получить список

Сохранить все доступные виртуальные машины в список.

Что получить - выбрать что именно нужно сохранить в список индексы ВМ или их имена (названия).

Положить в список - список, куда будет сохранён результат работы.


Настройки виртуальной машины (ВМ)

В этой части описаны функции по настройке виртуальной машины - WiFi MAC, производительность, прокси, разрешение, режим рендеринга и др.


Настройки идентификаторов устройства

С помощью данной функции можно изменить такие параметры как IMEI, Android ID (идентификатор устройства), IMSI, Sim Serial (серийный номер SIM карты).


Сотовый оператор

Все данные для этого экшена можно найти на этом сайте http://www.mcc-mnc.com/

Страна - две буквы (колонка ISO)

Код оператора - совокупность значений из колонок MCC и MNC (25002 для Мегафон, 25013 - Kuban GSM).

Название оператора - колонка Network (Baykal Westcom, BeeLine/VimpelCom, MTS)

Номер телефона - формат +7XXXXXXXXXXлибо без знака “плюс” в начале 7XXXXXXXXXX


Модель устройства

Производитель - производитель эмулируемого устройства (Samsung, Huawei, Xiaomi, Google, Meizu и т.д.)

Модель - модель эмулируемого устройства. Найти можно в build.prop (описано ниже)

ro.product.brand - обычно то же, что и Производитель. Если в этом поле значение не указано, то берётся из Производитель.

ro.product.board - обычно в современных телефонах данное поле пустое. Оно больше актуально для старых моделей телефонов.

ro.hardware - найти можно в build.prop (описано ниже).

Как найти данные для полей ro.product.board, ro.hardware?

Находить данные надо вручную.

Для этого необходимо сделать запрос в поисковую систему следующего вида build.prop <phone_model>. Пример запроса build.prop Samsung s10, переходим по одному из результатов и в тексте сообщения находятся интересующие нас данные:

ro.product.brand=samsung
ro.hardware.chipname=exynos9820
ro.product.board = нет

Модель можно найти по таким именам:

ro.product.model
ro.product.system.model

Как просмотреть параметры своего телефона?

Для этого нужно в терминале (пример приложения - Terminal Emulator for Android) выполнить команду getprop.


Настройка WiFi MAC

Здесь можно установить новый MAC адрес устройства.

Формат - XX:XX:XX:XX:XX:XX либо XXXXXXXXXXXX (12 знаков)


Производительность

Настройка выделяемых для ВМ ресурсов компьютера.

Процессоры - число выделяемых ядер процессора на эмулятор.

ОЗУ (МБ) - количество выделяемой оперативной памяти в МБ (минимальное значение - 512 МБ, максимальное - 4096).

ВМ должна быть выключена для применения настроек!

В большинстве случаев будет достаточно интервала 1 ЦПУ + 1 ГБ ОЗУ - 2 ЦПУ + 2 ГБ ОЗУ

Ресурсы, выделяемые для эмулятора, отнимаются у хоста (компьютер на котором установлен эмулятор). Если Вы отдадите всю память и все доступные ядра процессора эмулятору, то хост система начнёт тормозить. Из-за того, что тормозит хост, будет тормозить и эмулятор.

Начните с минимальных показателей и добавляйте ресурсы по мере необходимости.


Разрешение экрана

Тут Вы можете настроить Ширину, Высоту, а также плотность пикселей на дюйм (DPI) экрана ВМ.

Плотность (DPI) - можно ставить любые значения в диапазоне от 40 до 640. Лучше всего придерживаться стандартных показателей MEmu:

Плотность может повлиять на отображение элементов приложений. Рассмотрим на примере:

1280х720, плотность - 160

1280х720, плотность - 240

1280х720, плотность - 160

1280х720, плотность - 240

Клик по одному и тому же элементу, в одном и том же приложении может дать разный результат при разных значениях Плотности.

Вот, что может произойти при установке значения 640 для Плотности:


Режим рендеринга

Переключение режима рендеринга между OpenGL и DirectX.

Данная настройка больше касается игр. Оптимальное значение придётся вычислять экспериментальным путём, т.к. одни игры будут работать с OpenGL, другие с DirectX. Так же влияет видеокарта и её драйвера.

ВАЖНО: функция “Поиск по картинке” будет работать только в том режиме, в котором была записана.
Пример: Вы записали часть проекта в режиме OpenGL, затем переключились в DirectX - все ранее записанные действия “Поиск по картинке” перестанут работать, хоть визуально картинка и такая же.

ВМ должна быть выключена для применения настроек!


Режим суперпользователя

Данное действие позволяет включать\отключать root доступ к устройству.

ВМ должна быть выключена для применения настроек!


Общие папки

В этом экшене можно настроить пути в Windows к общим папкам.

Общие папки позволяют удобно пересылать файлы из\в эмулятор.

Категория - для одной виртуальной машины можно настроить до 4-х общих папок.

Категория

Путь в MEmu

Путь в Windows (по умолчанию)*

Категория

Путь в MEmu

Путь в Windows (по умолчанию)*

Download

/sdcard/Download

C:\Users\USERNAME\Downloads\MEmu Download

Movies

/sdcard/Movies

C:\Users\USERNAME\Videos\MEmu Video

Music

/sdcard/Music

C:\Users\USERNAME\Music\MEmu Music

Pictures

/sdcard/Pictures

C:\Users\USERNAME\Pictures\MEmu Photo

* - USERNAME замените на имя пользователя, под которым Вы работаете в Windows

Путь - путь к Windows директории для выбранной категории.

ВМ должна быть выключена для применения настроек!


Установка языка

Эта функция позволяет изменить язык эмулятора.

Доступные значения - en, ko, de, ja, fr, ru, es, pt, hr, cn, sr, it, cs, th, in, pl, tr, uk, ar, vi, fil

ВМ должна быть выключена для применения настроек!


Установка прокси

Позволяет установить прокси на всю ВМ.

Прокси лучше устанавливать до запуска эмулятора.

Можно поставить и для уже запущенной ВМ, но стоит учитывать, что некоторые приложения могут отправить данные до того, как Вы это сделаете.
Пример: Вы запускаете эмулятор, ждёте его загрузки и только потом устанавливаете прокси. В период времени между загрузкой эмулятора и установкой прокси приложения могли отправить данные через Ваш реальный IP адрес.

В ZennoDroid используется следующий формат для прокси:
С авторизацией: protocol://login:password@ip:port
Без авторизации: protocol://ip:port

protocol может быть http, socks4, socks5. Если не указывать протокол, то по умолчанию назначается http