Eclipse продолжает запускать новые эмуляторы - PullRequest
23 голосов
/ 08 ноября 2011

Я занят изучением того, как создавать приложения для Android, и столкнулся с очень неловкой проблемой.

Когда я запускаю свое приложение (с зеленым кружком со значком воспроизведения), оно запускает эмулятор Android (как и должно быть), но приложение не запускается после загрузки эмулятора. Когда я снова нажимаю кнопку запуска, он пытается запустить второй Android-эмулятор. На вкладке консоли выдает следующие сообщения:

[2011-11-07 20:57:15 - ScrollView Demo] Android Launch!
[2011-11-07 20:57:15 - ScrollView Demo] adb is running normally.
[2011-11-07 20:57:15 - ScrollView Demo] Performing testapp.scrollviewdemo.MainActivity activity launch
[2011-11-07 20:57:15 - ScrollView Demo] Automatic Target Mode: launching new emulator with compatible AVD 'Android_emulator'
[2011-11-07 20:57:15 - ScrollView Demo] Launching a new emulator with Virtual Device 'Android_emulator'
[2011-11-07 20:57:18 - Emulator] WARNING: Data partition already in use. Changes will not persist!
[2011-11-07 20:57:18 - Emulator] WARNING: SD Card image already in use: C:\Users\Roy\.android\avd\Android_emulator.avd/sdcard.img
[2011-11-07 20:57:18 - Emulator] WARNING: Cache partition already in use. Changes will not persist!

Как будто Eclipse не распознает эмуляторы, которые он запускает ... Странно то, что иногда он узнает это, но в большинстве случаев это не так.

Если это имеет какое-либо значение: я использую Eclipse IDE для разработчиков Java (Indigo Service Release 1) с ADT 15.0.0 на Win7 Home Premium 64bit

Ответы [ 6 ]

31 голосов
/ 08 ноября 2011

Если эмулятор запущен, это может означать, что adb работает.Не уверен в Windows, но в Mac / Linux я делаю следующее:

adb kill-server
sudo adb devices

Вы можете попробовать это (избавиться от бизнеса 'sudo').

5 голосов
/ 08 ноября 2011

Я не думаю, что вы ждете достаточно долго. Есть 3 этапа, чтобы пройти

  • Подождите, пока логотип Android не исчезнет при запуске (если вы не отключили загрузочную анимацию)
  • Дождитесь появления заблокированного экрана.
  • Подождите, пока приложение действительно будет установлено на устройство (вы получите сообщение «Установка nameOfApp на устройстве эмулятора #whwhat»)

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

Если вы попытаетесь снова щелкнуть «Выполнить» до того, как все это будет сделано, он будет неправильно считать, что эмулятор не запущен, и запустит новый.

Вы также можете убедиться, что с вашим эмулятором все в порядке, выбрав Window -> Android SDK and AVD Manager и выбрав Virtual Devices. Вы даже можете сначала запустить устройство (этапы 1 и 2) без фактической установки приложения. Вы также можете проверить состояние устройства с помощью DDMS (и убедиться, что оно фактически не устанавливает ваше приложение, а затем беззвучно рушится), выбрав DDMS в правом верхнем углу Eclipse или Window -> Open Perspective -> Other -> DDMS

.

Надеюсь, это поможет.

1 голос
/ 05 сентября 2013

лучший способ просто убить текущий работающий сервер

adb kill-server
0 голосов
/ 25 ноября 2014

Я не верю, что то, что вы видите, является ошибкой.

Возможно, вам не нужно перезапускать adb.

Что происходит, это:

Если текущий запущенный эмулятор не соответствует минимальному SDK проекта, который вы пытаетесь запустить. Менеджер Android SDK запустит эмулятор, который соответствует минимальному требованию SDK.

0 голосов
/ 21 сентября 2013

Перейдите в командную строку и укажите путь, в котором хранится adb, и введите следующую команду: сначала убейте adb, введя команду adb kill-server, а затем запустите adb, задав команду adb start-server (для windows) В противном случае есть еще один вариант Перейти к DDMS и перезапустить adb.

0 голосов
/ 15 мая 2013

После запуска эмулятора убедитесь, что имя эмулятора отражено в Eclipse-> DDMS-> Devices. Если он упоминается как «Онлайн», вы можете просто запустить приложение, и оно не запустит новый эмулятор. Если он упоминается как «Offline», перейдите к опции «View Menu» (маленькая кнопка со стрелкой вниз в окне «Devices») и сбросьте adb. Это перезапустит adb и сделает эмулятор онлайн.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...