На тех телефонах, где используется симка, нужно отключить захват трафика. После запуска выполните экшен Консольная команда
am start -a com.genymobile.gnirehtet.STOP -n com.genymobile.gnirehtet/.GnirehtetActivity
Это корректно прервет перехват и позволит использовать мобильный интернет .
Если приложение нормальное, то после выполнения консольной команды ADB Shell, сразу отобразится в галерее:
am broadcast -a android.intent.action.MEDIA_SCANNER_SCAN_FILE -d file:///sdcard/DCIM/Camera/your_file.png
В тестовом билде ZennoDroidEnterprise RU 2.3.2 от 11.01.2023 можно указать несколько путей к busybox через запятую.
При выполненении будет автоматически выбираться рабочий.
В тестовом билде ZennoDroid 2.3.2 Pro RU можно настроить, чтобы через WebRTC отображался адрес прокси (и DNS адреса, ближайшие к прокси)
Если есть желание протестировать, напишите в личку, настройка скрытая пока.
Попробуйте установить тестовый билд ZennoDroid Enterprise RU 2.3.2. Были исправления как раз касающиеся работы при подключении эмуляторов.
ZennoDroid использует последнюю версию adb, а в Nox по умолчанию установлена очень старая версия adb и возникают различные ошибки из-за разных версий...
Косметический баг. Номер не отображается, но на самом деле присваивается
Исправлено в тестовой версии 2.3.2.
Тестовый билд ZennoDroid Pro RU / Pro EN 2.3.2 от 29.11.2022.
Удалите эмулятор MEmu_3122. Там критическая поломка, Не дает инициализировать образы.
Пожалуйста, пользуйтесь ZennoDroid 2.3.1, а не 2.3.0. В нем было много исправлений.
Если еще раз не запустится/зависнет, сделайте еще раз диагностику. Возможно еще что-то вылезет.
На данный момент поломанный...
Если используется тот же образ MEmu, что и в Enterprise, то скорее всего остался старый метод ввода (AdbKeyboard).
Нужно заменить на родной. Выполнить экшен Консольная команда
ime set com.microvirt.memuime/.MemuIME
и перезапустить эмулятор.
Экшен запуск программы.
{-Environment.EmulatorDirectory-}memuc.exe
-i {-Variable.index-} setconfigex camera_type 1
{-Variable.index-} можно получить при Выборе устройства или из c#
project.Variables["index"].Value = instance.DroidInstance.Info.Index.ToString();
Можно взять номер из справочника контактов, раз контакт уже в нем есть. Правда если в контактах есть повторяющиеся имена, то выдаст несколько номеров.
Штатными средствами: Консольная команда
content query --uri content://com.android.contacts/data --where "display_name='{-Variable.FullName-}' AND...
Лучше использовать экшен "Разрешение экрана"
Не стоит использовать memuc.exe для установки каждого параметра, т.к. это создает очень большую нагрузку. При многопотоке будет сплошной бесконечный запуск новых процессов.
memuc имеет другой синтаксис.
memuc -n MEmu setconfigex...
Можно воспользоваться виртуальной камерой из MEmu.
В тестовый билд ZennoDroid 2.3.2 добавлен функционал, упрощающий работу с камерой (нажать на кнопку, задать положение и размер видоискателя, разместить изображение под ним, закрыть его).
Тестовый билд ZennoDroid Pro RU / Pro EN 2.3.2 от...
Memu 8.0.6 ? Запускается в обычном режиме или в Hyper-V ? https://zennolab.com/discussion/threads/ne-inicializiruetsja-ustrojstvo.105375/post-697820
Вроде с 8.0.6 стабильно работает сейчас (в обычном режиме).
Примерно понятно.
Устройства имеют в названии маркер с названием оператора, вроде такого?
Сделал небольшой шаблон. Запустите несколько машин и попробуйте выполнить.
Сформируется список запущенных.
Можно доработать использование дальше, подскажите, в каком направлении.
Добрый день!
Подскажите, пожалуйста, что в дальнейшем предполагается делать с полученным списком?
это три разных списка:
список устройств используемых в проектах
список запущенных устройств
список устройств видимых через adb
Виртуалка может использоваться в проекте, но при этом не быть...
Получится сильная привязка шаблона к телефону. Давайте попробуем ее избежать и пойти другим путем. Чтобы шаблон был универсален.
Не получится, добавим индивидуальную настройку.
Выполните, пожалуйста, прикрепленный шаблон (до конца, даже если будут ошибки в процессе). После его выполнения в...
Ключевое слово random имеет расширенный синтаксис. Чтобы задать отступы можно воспользоваться исключающими диапазонами. Например, для отступа в 3px с каждого края нужно указать random1(3-(end-3))
В качестве временного решения (рандомно выбираем виртуалку до тех пор, пока название не будет начинаться с нужного префикса, штатный рандом никогда не выберет занятую виртуалку):
//Префикс машины (OK или VK) задается во входных настройках
var prefix = project.Variables["prefix"].Value;
var droid...
На моем телефоне, чтобы добиться инерции нужно вести пальцем не равномерно, а с ускорением. Т.е. начинаем медленно и постепенно наращиваем скорость.
Примерно так,
var droid = instance.DroidInstance;
int x1 = 360;
int y1 = 1100;
int x2 = 360;
int y2 = 300;
int step = 10;
int increaseStep = 10...
В папке с установленной программой нужно удалить файл C:\Program Files\ZennoLab\RU\ZennoDroid Enterprise\2.3.1.0\Proxifier\ProxifierProfile.ppx.
И тогда еще раз:
Откройте папку Документы\Proxifier, в ней находится файл Log.txt, удалите файл.
Выполните в проекте:
1. Установка прокси (кубиком)...
Вероятно по умолчанию лог выключен :(
Поставьте уровень Verbose.
Set Log Directory - поставьте Документы\Proxifier (ну или любую удобную папку)
Выполните в проекте: Установка прокси, Запуск устройства, закройте/откройте Google Play (закрыть/открыть com.android.vending)
Прокси обязательно...
Откройте папку Документы\Proxifier, в ней находится файл Log.txt, удалите файл.
Выполните в проекте: Установка прокси, Запуск устройства, закройте/откройте Google Play (закрыть/открыть com.android.vending)
Дождитесь пока выдаст ошибку про отсутствие связи и пришлите мне в личку файл...
Медленно? Попробуйте снизить значение duration. Тут конечно нужно подбирать все индивидуально. Свайп и при физическом нажатии пальцем в реальной жизни часто ведет себя по разному, то быстрее, то медленнее, то подвиснет что-то на экране.
droid.Input.Swipe - это простая функция, где можно задать...
Очень странно. Я имел в виду значения ниже 100.
Если у Вас экран 720x1440, попробуйте:
var droid = instance.DroidInstance;
droid.Input.Swipe(360, 1100, 360, 200, duration:500);
//или
droid.Input.Swipe(360, 1100, 360, 200, duration:250);