Как подключить обратно эмулятор Android к ADB? - PullRequest
40 голосов
/ 10 февраля 2010

После того, как я запускаю эмулятор, нажимая Отладка в Eclipse, через некоторое время он отключается от ADB, но эмулятор остается открытым. Это отзывчивый, я могу перемещаться и запускать приложения.

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

(текущий обходной путь - завершение эмулятора, закрытие Eclipse и перезапуск обоих, что занимает 10 минут, поскольку вы знаете, что эмулятору нужно время для запуска)

РЕДАКТИРОВАТЬ 1
Проверьте это изображение:

enter image description here

РЕДАКТИРОВАТЬ 2

После того, как я убью и перезапущу сервер. Один процесс эмулятора отображается на вкладке «Устройства» в Eclipse. Но это не может быть расширено, и я не вижу подпроцессов.
Я не могу нажать отладку уже, так как он говорит: отладка уже запущена. (Как мне остановить отладку?)

Если мне удалось запустить отладку другого проекта, он зависает в эмуляторе, говоря мне: «Ожидание подключения отладчика». Ничего не происходит.

Ответы [ 7 ]

92 голосов
/ 10 февраля 2010

Как вы сказали, проблема не в том, что Eclipse теряет контакт с эмулятором, а в ADB - Android Debug Bridge - в потере контакта с ним. Поскольку Eclipse использует ADB для связи с эмулятором, когда ADB не работает, Eclipse ничего не может сделать.

Чтобы исправить это остановите сервер ADB , выполнив следующую команду:

adb kill-server

Затем Eclipse обычно пытается перезапустить ADB, или вы можете перезапустить его самостоятельно, выполнив команду ADB, например:

adb devices

Если вы это сделаете, вы увидите вывод, подобный этому:

* daemon not running. starting it now *
* daemon started successfully *
List of devices attached
emulator-5554   device

Вы также можете сделать это с помощью мыши, используя опцию Reset adb в представлении Устройства в Eclipse.

alt text

Стоит также отметить, что Консоль имеет два режима: DDMS и Android. Обычно вы находитесь в режиме Console, но это режим DDMS, в котором отображаются сообщения о состоянии ADB. Выберите режимы, нажав кнопку со значком «Монитор» или используя стрелку рядом с ней:

alt text

Если ничего не помогло, попробуйте убить процессы adb из ОС. В Windows XP я использую:

TASKKILL /F /IM adb.exe
3 голосов
/ 13 октября 2013

Есть более простой способ. Из eclipse вы можете сбросить adb с панели DDMS . Вот короткое видео о том, как это сделать «Сброс ADB в DDMS»

Вот быстрый скриншот, где вы можете получить опцию. enter image description here

1 голос
/ 23 августа 2013

Попробуйте использовать adb kill-server и adb start-server. Даже тогда та же самая проблема возникает, убивают Ваш запущенный процесс от перспективы ddms. Перейдите по этой ссылке (http://www.jiahaoliuliu.com/2011/02/stopping-android-applications-already.html). Это решило мою проблему. Надеюсь, что вы тоже.

1 голос
/ 22 мая 2012

на mac, мне просто нужно было убить adb из диспетчера активности и вручную снова открыть программу. было затмение, открытое на всем протяжении, и это работало просто отлично.

1 голос
/ 10 февраля 2010

Иногда kill-server не помогает на моей машине (WinXP). Например, я больше не вижу эмулятор в DDMS-View или вижу его, но на нем не запущены процессы.

В этих случаях я закрываю эмулятор и затмение и вручную убиваю процесс adb.exe из списка процессов.

Когда я перезапускаю Eclipse и эмулятор, все снова в порядке.

Теперь мне просто нужно сочетание клавиш: -)

0 голосов
/ 19 октября 2012

Мой удобный скрипт bash

#!/bin/bash
./path/to/adb kill-server
./path/to/adb start-server
./path/to/adb devices
0 голосов
/ 26 июля 2012

Я тестирую приложение на эмуляторе Android 4.0 (уровень API 14), и после запуска приложения эмулятор запускается, и, как только он загружается, Eclipse DDMS отключается от эмулятора.

Вот обходной путь, который я использую: Откройте терминал, перейдите к инструментам платформы (C: \ android-sdk \ platform-tools \ или везде, где установлен ваш android-sdk), и запустите adb kill-server, а затем беги, adb start-server. DDMS должен теперь перечислить эмулятор - с точки зрения Java, щелкните правой кнопкой мыши на приложении -> Run As -> Android Application.

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

...