为什么必须经常重启Android Debug Bridge(adb)?

时间:2013-07-02 12:19:51

标签: android android-emulator adb

这就是每天发生的事情大约六次:

Android模拟器(例如CPU / API:Intel Atom(x86),目标:API级别15)运行良好一段时间,然后Eclipse在安装应用程序时显示以下错误

[2013-07-01 15:15:47 - Myapp] Failed to install myapp.apk on device 'emulator-5554': Connection refused: connect
[2013-07-01 15:15:47 - Myapp] java.net.ConnectException: Connection refused: connect
[2013-07-01 15:15:47 - Myapp] Launch canceled!

有时关闭并重新启动模拟器将解决此问题。但是,大多数情况下,启动模拟器会生成以下内容:

[2013-07-01 15:16:43 - Emulator] HAX is working and emulator runs in fast virt mode
[2013-07-01 15:16:43 - Emulator] emulator: warning: opening audio input failed

当发生这种情况时,模拟器将显示,但它将无法工作(即无法安装应用程序)。重置adb(DDMS>设备>重置adb)将无效。我必须去Windows任务管理器杀死adb.exe。

将在不到20秒的时间内自动重启Adb.exe

我有点厌倦了每天多次这样做,所以我正在寻找一种避免adb腐败的方法。

计算机操作系统:Windows 8 Pro

CPU:Intel i5

Eclipse:Build id:20121004-1855

已添加于2013-07-26: 我选择IronBlossom的回答作为答案,即使它没有具体回答这个问题,但它解决了不得不经常重启ADB的问题。实际上,它解决了多个问题,包括一个非常重要的问题 - 无法在快速模式下同时运行英特尔的Android模拟器和Windows模拟器。有一个trick可以并排运行Genymotion仿真器和Windows Phone仿真器。

3 个答案:

答案 0 :(得分:2)

尝试使用Genymotion。它在Oracle VM上运行。

它甚至具有GPS和电池级功能,预先植根于超级用户应用程序。

答案 1 :(得分:1)

我通常使用2台计算机,其中一台是高端计算机播放Windows 8,我从来没有让adb崩溃或模拟器运行缓慢,但在我的带有i5 2415m和2GB ram的macmini上它崩溃了很多,但是我升级后它到5GB ram adb很少崩溃,我可以运行2次日食和4次模拟器,它很少崩溃。

所以我的意思是,也许adb没有完成,它有一些可能与内存泄漏或线程同步有关的问题,但是(再次)它只是我的经验,实际上它从来没有打扰过我得多。

答案 2 :(得分:0)

当您在设备上遇到运行时错误时,请先点击设备上的提示确认已发生崩溃,而不是按ctrl + c退出adb。之后然后ctrl + c退出adb。如果它有效,这应该打印出一些快乐的东西。

adb devices