Как точно узнать состояние эмулятора: не работает, загружено, устройство - PullRequest
2 голосов
/ 09 марта 2012

У меня есть проблема, и я не знаю, как ее решить.

Как точно узнать состояние эмулятора: не работает, загружено, устройство

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

Первый шаг - запуск эмулятора с помощью скрипта bash:

Шаг 1: запуск эмулятора Тип бегуна: Командная строка (Простое выполнение команды) Пользовательский скрипт:

#!/bin/bash
DEVICES=`adb devices`
echo $DEVICES
if [[ $DEVICES == *emulator*device* ]]
then
    echo "Emulator has already been running"
else
    if [[ $DEVICES == *emulator* ]]
    then
        adb emu kill
        echo "All previous emulator were killed"
    fi
    echo "Launching new emulator..."
    emulator @Emul -no-window &
    adb wait-for-device
    sleep 60 #android os should start completely
    echo "Emulator launched"
    adb devices
fi

Проблема в том, что эмулятор при зависании. Скрипт висит на заявлении: «adb wait-for-device» И не продолжает его выполнение. И процесс сборки не продолжается. И тогда все встраивается в крах TeamCity. Приходится вручную подключаться через VNC и перезапускать эмулятор.

Можете ли вы также сказать:

  • или получить информацию от эмулятора о его состоянии; (больше, чем правильное решение «adb wait-for-device»)
  • или как отловить ответ на обработку сигнала задержки и перезапустить скрипт, выполненный в TeamCity

Спасибо за внимание к проблеме

1 Ответ

0 голосов
/ 14 марта 2012

Это показывает только два шага эмулятора. 1.Online 2.offline

чтобы узнать уровень эмулятора ... Введите следующую команду. C: \ путь к устройствам sdks \ adb
Он покажет, активен ли ваш эмулятор или нет, и покажет номер активного эмулятора.

...