Android Manager - модуль для управления android эмуляторами

Делитесь модулями
  • Сделал блок подключенных устройств вышло "127.0.0.1:21853". При выполнении других действий треубется серийный номер устройства, получаемый из девайс_лист. Выбираю свое устройство и выходит ошибка:Поток №1 : DeviceIsNotRunningError: Устройство 127.0.0.1:21853 не найдено или находится оффлайн

  • @makasin_402 приложите скрин действий, где вы подключаетесь к устройству, или сам шаблон.

  • @makasin_402 действие "Получить список устройств" нужно для того чтобы затем обработать его в цикле FOREACH и на каждой итерации цикла выполнить в начале действие "Подключиться к устройству", куда передать в параметр "Серийный номер" FOREACH_DATA. Это я пишу, потому что у многих с этим вопросы.

    В вашем случае действие "Получить текущее активити" не требует запускать сервер и подключаться к устройству, т.к. выполняется отправкой команды к adb. Попробуйте в начале выполнить команду:

    adb connect SERIAL_NUMBER
    

    Вместо SERIAL_NUMBER - ваш серийник. Либо используйте эмулятор Memu, там такой проблемы нет.

  • @thepappo Как можете увидеть по скрину, я пользуюсь как раз таки MEMU. А что имеется в виду под серийным номером? Тот ip:port, который указывается после выполнения adb devices, это и есть серийник?

  • @makasin_402 said in Android Manager - модуль для управления android эмуляторами:

    Тот ip:port, который указывается после выполнения adb devices, это и есть серийник?

    да


  • Версия 2.2

    Добавлено действие "Решить ReCaptcha v2". С помощью него можно автоматически решать капчу ReCaptcha v2. Язык устройства должен быть русским или английским, чтобы капча отображалась на одном из этих языков.

    Капча решается кликами через сервисы:

  • This post is deleted!
  • @thepappo Тогда я от слова совсем не понимаю, что я делаю не так...

    Смотрите, объясню как я понимаю, исправьте пожалуйста где я неправ.
    Для работы/создания скрипта должен быть включен эмулятор.

    1.Первым действием всегда нужно запускать сервер, иначе ни одна команда не будет работать(кроме списка подключенных устройств). Проверил это, поставив одно из действий вперед текущего- выходит ошибка что нужно вначале запустить сервер
    2. Вторым действием, по моей логике, должно идти "Подключенные устройства", чтобы выцепить серийник, а не вводить его вручную.
    3. Третьим действием, нужно подлючиться к устройству(хз надо ли или нет, так это устройство уже находится в ПОДКЛЮЧЕННЫХ)
    4. Четвертным действием, я хочу получить текущее активити(если я правильно понял, то это приложение запущенное(открытое) на данный момент в окне эмулятора).

    На 3 шаге как раз таки выходит ошибка: DeviceIsNotRunningError: Устройство 127.0.0.1:21853 не найдено или находится оффлайн. Хоть оно онлайн, и как бы открыто у меня)

    Объясните мне, тому у кого сегодня лыжи не едут, что я делаю не так и почему эта ошибка выходит?

    Доп. вопрос: Может быть нужно в переменных средах указать путь к эмулятору? Если да, то подскажите как и куда

  • @makasin_402 said in Android Manager - модуль для управления android эмуляторами:

    @thepappo Тогда я от слова совсем не понимаю, что я делаю не так...

    Смотрите, объясню как я понимаю, исправьте пожалуйста где я неправ.
    Для работы/создания скрипта должен быть включен эмулятор.

    1.Первым действием всегда нужно запускать сервер, иначе ни одна команда не будет работать(кроме списка подключенных устройств). Проверил это, поставив одно из действий вперед текущего- выходит ошибка что нужно вначале запустить сервер
    2. Вторым действием, по моей логике, должно идти "Подключенные устройства", чтобы выцепить серийник, а не вводить его вручную.
    3. Третьим действием, нужно подлючиться к устройству(хз надо ли или нет, так это устройство уже находится в ПОДКЛЮЧЕННЫХ)
    4. Четвертным действием, я хочу получить текущее активити(если я правильно понял, то это приложение запущенное(открытое) на данный момент в окне эмулятора).

    На 3 шаге как раз таки выходит ошибка: DeviceIsNotRunningError: Устройство 127.0.0.1:21853 не найдено или находится оффлайн. Хоть оно онлайн, и как бы открыто у меня)

    Объясните мне, тому у кого сегодня лыжи не едут, что я делаю не так и почему эта ошибка выходит?

    Доп. вопрос: Может быть нужно в переменных средах указать путь к эмулятору? Если да, то подскажите как и куда

    UPD: Понял почему выходила ошибка. Так как список подключенных устройств выдается (сюрприз-сюрприз)списком, нужно вначале получить элемент из списка, а после уже указывать полученную переменную в дальнейших действиях, где просят серийник.
    Хотя как-то странно, список у меня состоял из одного элемента, я думал бас автоматом поймет что я обращаюсь к строке из списка, так как она у меня одна.
    Затупил, сорри

  • Не подскажите как увеличить время сессии? Так как через 60 сек она закрывается и перестают работать все действия Xpath, работают только системные команды.
    alt text
    В BAS соответственно так пишут:
    alt text

  • Часто выходит ошибка "Error: Failed to create session. read ECONNRESET", при подключении к устройству. Как исправить? Пока что перезапуск помогает, но не всегда

  • @Fig посмотрю, есть ли такой параметр. Если есть, добавлю

  • @makasin_402 запускайте сначала сервер руками перед запуском шаблона, как описано в старт посте.

  • Безымянный.png Ввод текста работает странно. Обратите внимание на низ скришота, где открыто приложение. Ввелись лишь цифры, но не слово(anna)

  • @makasin_402 скиньте в личку ссылку на apk приложения, проверю.

  • @thepappo отписал в личку

  • @thepappo "Проверить существование элемента" перестала работать в версии 2.2, BAS выдает ошибку "XPath parse error", в версии 2.1 работает.

  • @Fig ух ё, я там решил код отрефакторить и здоровый класс переписал. Ок, спасибо, проверю, что там поломалось.


  • Версия 2.3

    • Добавлен параметр "Время ожидания след. команды, сек" в действие "Подключиться к устройству". По истечению этого таймаута текущая сессия устройства будет удалена.
    • Исправлена ошибка в действии "Проверить существование элемента", появившаяся в версии 2.2.