adb永远等待运行模拟器

时间:2013-10-17 14:55:37

标签: android android-emulator

我刚刚在linux上安装了SDK。我之前使用过它,因为我去年做了一些Android工作,当时我对这些工具没有任何麻烦。

但是当前安装不会安装到模拟器上。 avd已启动且模拟器正在运行:

> adb devices
List of devices attached 
emulator-5554   device

> adb install blahblah.apk
error: protocol fault (no status)
- waiting for device -

一直挂到我杀了它。然后:

> adb devices
List of devices attached

> adb kill-server
> adb start-server
* daemon not running. starting it now on port 5037 *
* daemon started successfully *

> adb devices
List of devices attached 
emulator-5554   device

> adb -s emulator-5554 install blahblah.adk
error: protocol fault (no status)
- waiting for device -

我必须经历这十几次,正常用户和root。我看了this Q&A并尝试使用ADB_TRACE进行同样的操作。杀死并重新启动服务器时,这会产生一个奇怪的区别:

> adb start-server
system/core/adb/adb.c::main():Handling commandline()
system/core/adb/adb_client.c::_adb_connect():_adb_connect: host:version
system/core/adb/adb_client.c::adb_connect():adb_connect: service host:start-server
* daemon not running. starting it now on port 5037 *
ADB server didn't ACK
* failed to start daemon *

如果没有跟踪,它始终是“守护程序成功启动”。但随后的adb devices再次显示了模拟器。现在尝试adb install会产生大量的调试输出,就在“错误:协议错误(无状态)”之前:

system/core/adb/transport.c::readx():readx: fd=3 disconnected
system/core/adb/adb_client.c::adb_connect():adb_connect: return fd -1
error: protocol fault (no status)

然后在“等待设备”之前:

system/core/adb/transport.c::readx():readx: fd=3 wanted=4 got=4
4641494c FAIL
system/core/adb/transport.c::readx():readx: fd=3 wanted=4
system/core/adb/transport.c::readx():readx: fd=3 wanted=4 got=4
30303130 0010
system/core/adb/transport.c::readx():readx: fd=3 wanted=16
system/core/adb/transport.c::readx():readx: fd=3 wanted=16 got=16
646576696365206e6f7420666f756e64 device not found
system/core/adb/adb_client.c::switch_socket_transport():Switch transport failed
system/core/adb/adb_client.c::adb_connect():adb_connect: return fd -1

我没有在网上找到任何类似的报道。

1 个答案:

答案 0 :(得分:1)

出于绝望,我再次解压缩SDK,希望它在没有打开整个内容的情况下从.zip中删除它(为什么你还要下载ADT包?)。

然后我运行了SDK管理器并注意到上次我没有安装更新的armeabi-v7a系统映像,所以我就这样做了。然后我在两个SDK目录上运行diff -rq(这个,今天早上的那个),报告的唯一内容是armeabi-v7f图像目录中的内容(查看build.prop,一个是一个月大了。)

但是,在模拟器上安装.apk第一次没有问题,万岁。也许旧系统图像中存在一个错误 - 如果有这么奇怪的话,就不会有更多关于此在线报告。