Новая версия 1.3
Убрал зависимость от модуля "Строка"В режиме компиляции не работало, если в проекте не было действий этого модуля.
@thepappo said in AndroidManager - модуль для управления android эмуляторами:
@spacerange это опять же ошибки adb. Вообще через adb нокса подключаться не очень правильно. Там старая версия. Его лучше переименовать в _adb.exe. А использовать adb из Android Studio SDK. Я позже потестирую на ноксе. Сейчас занят апдейтом модуля по части многопотока и некоторых других фишек.
В свое время делал многопоток на голом adb + nox, правда писал на nodejs но можно было тоже самое написать в БАС. Я к тому что мне кажется на adb меньше гемора чем с этим фреймворком, который в модуле, он мне еще тогда не понравился.
А вообще советую для всех у кого ошибки adb или связанные с селекторами, проделать следующие процедуры:
npm install appium-doctor -g
appium-doctor --android
Вот эти пункты должны быть ОК:

@UserTrue основная проблема - это получение xml дампа. Он нужен, чтобы искать элементы по xpath. Если на голом adb, то его можно дергать через:
adb shell uiautomator dump
Проблема в том, что тут используется первая версия юиавтоматора и действие занимает 2,5-3 секунды, что овер долго. Плюс, уже сам гугл давно отказался от поддержки первой версии.
Во второй версии юиавтоматора уже как раз надо запускать appium сервер и ставить драйвер uiautomator2. На сервер уже посылаются запросы через REST API, и сервер отправляет команды на эмуль. Это работает на порядок быстрее, чем первая версия юиавтоматора. Тот же дамп делает практически мгновенно.
Короче. Я написал уже все. Надо только собрать модуль, что самое сложное. Ты, думаю, меня понимаешь ))
@thepappo said in AndroidManager - модуль для управления android эмуляторами:
@spacerange это опять же ошибки adb. Вообще через adb нокса подключаться не очень правильно. Там старая версия. Его лучше переименовать в _adb.exe. А использовать adb из Android Studio SDK. Я позже потестирую на ноксе. Сейчас занят апдейтом модуля по части многопотока и некоторых других фишек.
Да это из за adb, я где - то видел рекомендацию заменить adb.exe из папки Android Studio SDK в папку Nox.
Попробовал и свайп заработал, но очистка кеша уже теперь выдает другую ошибку, что - то типа неизвестная команда. Но да ладно, буду думать как использовать только Android Studio SDK, что - то никак не хочет к нему подключаться нормально.
@thepappo said in AndroidManager - модуль для управления android эмуляторами:
adb shell uiautomator dump
Да я через него и делал, это было года 3 назад )) Мне тогда не понравился вся эта затея и больше этим не занимался, хотя справедливости ради сделал рабочий многопоток для одной прилы. Тогда еще было много проблем с самими эмуляторами сейчас тот же nox работает гораздо лучше.
@UserTrue многопоток будет работать, конечно. Ну то есть асинхрон. Но скорость будет дно. Я сам на этой библиотеке пишу. Но в ноду ее не присрешь, поэтому было решено присрать аппиум, который по сути для этих задач максимально кошерен и для него есть норм врапперы на ноде.
Выяснил опытным путем что именно без Gow получить текущее активити не работает.
То есть он обязателен для использования модуля. Очистить кеш так и выдает ошибку:
SubprocessError: Процесс завершился с кодом: 1. Ошибка: adb.exe: unknown command adb
Удалил пути и оставил только Android Studio SDK, что по сути дало тоже самое когда я заменял adb.exe в папке Nox. Только теперь нужно вручную подключаться через команду adb connect. В appium-doctor у меня почему - то не было JAVA HOME, прописал вручную, ничего не дало.
Очистить кеш выполнил командой:
adb shell pm clear <package_name>
Еще при использовании UI Automator Viewer, заметил что он не может снять дамп пока BAS подключен к эмулятору, приходится переподключаться в консоли, снимать дамп и потом снова подключаться в BAS.
А так, в целом модуль мне нравится, основное вроде как работает, да некоторые детали нужно допилить и еще есть определенные сложности с первоначальной настройкой (хотя может и мне так повезло).
@spacerange said in AndroidManager - модуль для управления android эмуляторами:
В appium-doctor у меня почему - то не было JAVA HOME, прописал вручную, ничего не дало.
Там не все версии Java вроде работают. У меня такая openjdk-8u282-b08. В папке с установленной джавой должна быть папка bin. Вот так выглядит:

@spacerange said in AndroidManager - модуль для управления android эмуляторами:
Еще при использовании UI Automator Viewer, заметил что он не может снять дамп пока BAS подключен к эмулятору, приходится переподключаться в консоли, снимать дамп и потом снова подключаться в BAS.
Да, есть такая проблема. По ходу вьювер и либа используют один и тот же порт для подключения. На новой версии такого не будет.
Основное изменение данной версии - это переход на Appium, который использует драйвер uiautomator2 для отправки команд на эмуляторы. Appium используется для всех действий, связанных с взаимодействием с элементами по xpath, а также для действий "Подключиться к устройству" (создается сессия указанного устройства по серийному номеру на сервере), "Отключиться от устройства", "Сделать скриншот", "Открыть панель уведомлений" и "Получить XML дамп".
За счет использования аппиума теперь работает многопоток.
Добавил инструкцию по установке и началу работы в шапку темы.
Добавил обновленный шаблон для версии 2.0 в качестве примера.
кто может написать с этим модулем простейший регер для андроид приложения? нужно всего лишь открыть приложение,ввести номер телефона.нажать кнопку реги.выскакивает капча простая цифровая.рещаем ее через сервис. пощел таймер ожидания смс верификации. все.ничего сохранять не нужно.завершать регу Не нужно. кто поможет??! с меня большое пиво!
@alex911 said in Android Manager - модуль для управления android эмуляторами:
кто может написать с этим модулем простейший регер для андроид приложения? нужно всего лишь открыть приложение,ввести номер телефона.нажать кнопку реги.выскакивает капча простая цифровая.рещаем ее через сервис. пощел таймер ожидания смс верификации. все.ничего сохранять не нужно.завершать регу Не нужно. кто поможет??! с меня большое пиво!
Тема для заказов находится вот здесь: https://community.bablosoft.com/category/30/заказать-скрипт
Сделал блок подключенных устройств вышло "127.0.0.1:21853". При выполнении других действий треубется серийный номер устройства, получаемый из девайс_лист. Выбираю свое устройство и выходит ошибка:Поток №1 : DeviceIsNotRunningError: Устройство 127.0.0.1:21853 не найдено или находится оффлайн
@makasin_402 приложите скрин действий, где вы подключаетесь к устройству, или сам шаблон.