How to attach back the Android emulator to ADB?

2019-01-10 06:24发布

After I start the emulator by hitting Debug in Eclipse, after certain time it disconnects from the ADB, but the emulator stays open. It is responsive, I can navigate and start apps.

How can I attach back the emulator to ADB, to be able to debug from Eclipse?

(the current workaround is the terminate the emulator, close Eclipse and restart both of them, which takes 10 minutes as you know the emulator needs time to start up)

EDIT 1
Check out this image:

enter image description here

EDIT 2

After I kill and restart server. One emulator process shows up in Devices tab in Eclipse. But that cannot be expanded, and I don't see sub-processes.
I can't hit debug already, as it says: Debug already running. (How to I stop the debug?)

If I managed to start the debugging of another project, It hangs out in the emulator telling me: Waiting for the debugger to attach. Nothing happens.

7条回答
ら.Afraid
2楼-- · 2019-01-10 06:54

Sometimes a kill-server won't help at my machine (WinXP). For example I can't see the emulator in the DDMS-View any more or I do see it but no processes running on it.

In these cases I close the emulator and eclipse and manually kill the adb.exe-process from the process list.

When I then restart eclipse and the emulator, everything's fine again.

Now I just need a keyboard-shortcut for that :-)

查看更多
冷血范
3楼-- · 2019-01-10 06:58

As you said, the problem is not Eclipse losing contact with the Emulator, but ADB - the Android Debug Bridge - losing contact with it. As Eclipse uses ADB to communicate with the emulator when ADB is broken Eclipse can do nothing.

To fix this stop the ADB server by running the following command:

adb kill-server

Eclipse will then usually try to restart ADB, or you can restart it yourself by running an ADB command, such as:

adb devices

If you do, you'll see output like this:

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

You can also do this via the mouse, using the Reset adb option in the Devices view in Eclipse.

alt text

It's also worth noting the Console view has two modes, DDMS and Android. You're usually in Console mode but it's DDMS mode which will show ADB status messages. Select modes by clicking the button with the Monitor icon, or using the arrow next to it:

alt text

If all else fails, try killing the adb processes from the OS. On Windows XP I use:

TASKKILL /F /IM adb.exe
查看更多
Lonely孤独者°
4楼-- · 2019-01-10 07:06

on a mac, i just had to kill adb from activity manager and manually re-open the program again. had eclipse open all through and it worked just fine.

查看更多
看我几分像从前
5楼-- · 2019-01-10 07:09

I am testing an application on an Android 4.0 (API level 14) emulator and once I run the app the emulator starts up and as soon as it loads, Eclipse DDMS disconnects from the emulator.

Here is the workaround that I am using: Open terminal, navigate to platform tools (C:\android-sdk\platform-tools\ or wherever you have your android-sdk installed), and run adb kill-server, and then run, adb start-server. DDMS should now list the emulator - from Java perspective, right click on the app -> Run As -> Android Application.

Hope this helps.

查看更多
戒情不戒烟
6楼-- · 2019-01-10 07:15

My handy bash script

#!/bin/bash
./path/to/adb kill-server
./path/to/adb start-server
./path/to/adb devices
查看更多
来,给爷笑一个
7楼-- · 2019-01-10 07:16

Try with adb kill-server and adb start-server. Even then the same problem occurs kill your running process from ddms prespective. Refer this link(http://www.jiahaoliuliu.com/2011/02/stopping-android-applications-already.html). This solved my issue. Hope for you also.

查看更多
登录 后发表回答