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

Делитесь модулями
  • image.png
    Бас только очищает поле с текстом но не вводит новые данные, что может быть не так ? Эмулятор МЕМУ версии 7.1.1 Андроид 7х64

    upd: удалось ввести через adb shell input text "text" но все таки интересно отчего не работает через модуль

  • @c3p0oh Какая у вас прилка проксификации Android?

  • @Nikolas sagernet, добавлю что с ней тоже не все гладко. У меня не работает импорт профиля через буфер обмена, приходится возиться с заполнением кликами..

  • Привет
    Вчера всё работало норм, сегодня получаю такую ошибку
    (node:25160) [DEP0040] DeprecationWarning: The punycode module is deprecated. Please use a userland alternative instead.
    (Use node --trace-deprecation ... to show where the warning was created)
    image.png

    image.png

  • Помог откат до более ранней версии Node JS 20.17.0

    Но не все команды работают в Memu
    SubprocessError: Процесс завершился с кодом: 255. Ошибка: "grep" �� ���� ����७��� ��� ���譥� ��������, �ᯮ��塞�� �ணࠬ��� ��� ������ 䠩���.
    invalid session id: A session is either terminated or not started

    Сессия при этом жива

  • Постоянно вылетает "invalid session id: A session is either terminated or not started" - как с этим бороться?

  • @mp4treiser увеличить сессию (ожидание следующего действия)

  • This post is deleted!
  • @RIDE12 итак увеличивал уже неоднократно

    Написал библиотеку для управления эмуляторами - создание, ренейм, уникализация и т.д.
    Оказалось зря потраченное время

    Воспользовался zennodroid, т.к. не готов использовать настолько жёсткий костыль)

  • Есть решение hcaptcha для android? Интернет облазил - не помогает:(

  • Вручную запускаю appium сервер из командный строки
    appium -a 127.0.0.1 -p 4723 --base-path /wd/hub
    в BAS-е выполняют действия "Запустить сервер" (127.0.0.1:4723)
    и после этого "Подключиться к устройству" (127.0.0.1:21503)(Memu emulator),
    получаю следующую ошибку.

    Error: Failed to create session. WebDriverError: Request failed with error code UND_ERR_INVALID_ARG when running "http://localhost:4723/wd/hub/session" with method "POST" and args "{"capabilities":{"alwaysMatch":{"platformName":"android","appium:udid":"127.0.0.1:21503","appium:automationName":"UiAutomator2","appium:newCommandTimeout":300000},"firstMatch":[{}]}}"

    до переустановки Windows всё работало нормально.

    Все шаги в инструкции перепроверил несколько раз, сейчас корректно работает Appium inspector, получаю локаторы элементов и могу кликнуть по элементу используя локаторы. то есть Appium корректно взаимодействует и с эмулятором и с реальным телефоном.

    Но в BAS-е получаю ошибку.

    Подскажите пожалуйста, в чём может быть причина ?

  • Попробовал запустить эту же команду через Curl.

    curl -X POST http://127.0.0.1:4723/wd/hub/session ^
    -H "Content-Type: application/json" ^
    -d "{"capabilities":{"alwaysMatch":{"platformName":"android","appium:udid":"127.0.0.1:21503","appium:automationName":"UiAutomator2","appium:newCommandTimeout":300000},"firstMatch":[{}]}}"

    и получил ответ
    {"value":{"capabilities":{"platformName":"android","udid":"127.0.0.1:21503","automationName":"UiAutomator2","newCommandTimeout":300000,"platform":"LINUX","webStorageEnabled":false,"takesScreenshot":true,"javascriptEnabled":true,"databaseEnabled":false,"networkConnectionEnabled":true,"locationContextEnabled":false,"warnings":{},"desired":{"platformName":"android","udid":"127.0.0.1:21503","automationName":"UiAutomator2","newCommandTimeout":300000},"deviceName":"127.0.0.1:21503","deviceUDID":"127.0.0.1:21503","pixelRatio":"1.49375","statBarHeight":36,"viewportRect":{"left":0,"top":36,"width":720,"height":1244},"deviceApiLevel":28,"platformVersion":"9","deviceManufacturer":"samsung","deviceModel":"SM-G935F","deviceScreenSize":"720x1280","deviceScreenDensity":239},"sessionId":"41c28e8c-7ab8-4f7b-a164-8248d2a4ba87"}}

    Это означает, что сессия успешно создана, и запрос через curl был выполнен корректно.

    Ответ содержит информацию о сессии и устройстве, в том числе:

    platformName: "android"
    udid: "127.0.0.1:21503"
    deviceModel: "SM-G935F" (устройство эмулирует Samsung Galaxy S7)
    platformVersion: "9" (Android 9)
    sessionId: уникальный идентификатор сессии.

    Таким образом, Appium корректно работает через curl, и проблема, скорее всего, связана с тем, как BAS отправляет запросы.

    Как узнать какие запросы отправляют BAS ?

  • Разобрался.
    Установил webdriverio@8.40.3 и изменил AndroidManager.zip из первого поста и все заработало.
    Огромное спасибо за модуль.

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

    Установил webdriverio@8.40.3 и изменил AndroidManager.zip из первого поста и все заработало.

    Странно, я уже давно поменял версию в модуле, о чем писал вот тут. В настройках шаблона webdriverio тоже устанавливать не надо, BAS ее сам поставит из модуля.

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

    Но не все команды работают в Memu
    SubprocessError: Процесс завершился с кодом: 255. Ошибка: "grep" �� ���� ����७��� ��� ���譥� ��������, �ᯮ��塞�� �ணࠬ��� ��� ������ 䠩���.
    invalid session id: A session is either terminated or not started

    Сессия при этом жива

    Первый пост, раздел FAQ посмотрите.

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

    Как узнать какие запросы отправляют BAS ?

    В теории аргументы лога добавить при запуске сервера. Документация

  • Почему-то не работают клики по xpath и всё что с ним связано. Выдаёт такую ошибку: Поток №1 : unknown error: 'GET /wd/hub/session/e62f8cca-71d2-4585-997c-56dfd37f201b/source' cannot be proxied to UiAutomator2 server because the instrumentation process is not running (probably crashed). Check the server log and/or the logcat output for more details

    В аппиуме: [172db5aa][Logcat] Logcat terminated with code 255, signal null
    [172db5aa][AndroidUiautomator2Driver@c828] [Instrumentation] io.appium.uiautomator2.server.test.AppiumUiAutomator2Server:
    [172db5aa][AndroidUiautomator2Driver@c828] [Instrumentation] The process has exited with code 255, signal null
    [172db5aa][HTTP] --> GET /wd/hub/session/172db5aa-c830-43c9-84d6-763743189e0a/source {}
    [172db5aa][AndroidUiautomator2Driver@c828] Driver proxy active, passing request on via HTTP proxy
    [172db5aa][HTTP] <-- GET /wd/hub/session/172db5aa-c830-43c9-84d6-763743189e0a/source 400 24 ms - 2477
    [172db5aa][HTTP] --> GET /wd/hub/session/172db5aa-c830-43c9-84d6-763743189e0a/source {}
    [172db5aa][AndroidUiautomator2Driver@c828] Driver proxy active, passing request on via HTTP proxy
    [172db5aa][HTTP] <-- GET /wd/hub/session/172db5aa-c830-43c9-84d6-763743189e0a/source 400 3 ms - 2477
    [172db5aa][HTTP] --> GET /wd/hub/session/172db5aa-c830-43c9-84d6-763743189e0a/source {}
    [172db5aa][AndroidUiautomator2Driver@c828] Driver proxy active, passing request on via HTTP proxy
    [172db5aa][HTTP] <-- GET /wd/hub/session/172db5aa-c830-43c9-84d6-763743189e0a/source 400 1 ms - 2477
    [172db5aa][HTTP] --> GET /wd/hub/session/172db5aa-c830-43c9-84d6-763743189e0a/source {}
    [172db5aa][AndroidUiautomator2Driver@c828] Driver proxy active, passing request on via HTTP proxy
    [172db5aa][HTTP] <-- GET /wd/hub/session/172db5aa-c830-43c9-84d6-763743189e0a/source 400 1 ms - 2477

    В Appium Inspectore всё работает к примеру.

  • Подскажите какие сервисы исползуете для сервера под эмулятор?

  • This post is deleted!
  • пишу регер тиктока, делаю через эмулятор андроид. тут задача, нужно выбрать дату рождения из комбобокса в приложении, но как это сделать?