转载:http://blog.csdn.net/xiaanming/article/details/9401981
转载:http://blog.csdn.net/linghu_java/article/details/43735225
第一种:
ADB server didn't ACK 这个问题会困恼很多的新手朋友,我以前刚开始做Android的时候也遇到过这个问题,不过自己百度,google啥的,也不知道怎么就给解决了,看到群里很多新手朋友都会问这个问题,说实话我也没有一个解决这个问题的终极方法(百试百灵的那种,哈哈),自己没遇到也没有认真的去对待他,今天,就是在今天,我打开Eclipse连上手机,准备调试程序,出现如下的信息
- The connection to adb is down, and a severe error has occured.
- You must restart adb and Eclipse.
- Please ensure that adb is correctly located at 'D:\android-2.2-windows\platform-tools\adb.exe' and can be executed.
- * daemon not running. starting it now *
- ADB server didn't ACK
- * failed to start daemon *
- 查看5037端口被谁占用了,开始--运行--CMD 到命令提示符,输入 netstat -aon|findstr "5037",如下图
- 我们从上面根本就看不出5037端口被谁占用,我们需要根据后面的PID(2748)来查找占用该端口的应用程序,输入 tasklist|findstr "2748" ,如下图 注: 我这里5037端口是正确的被adb.exe占用,如果是你,就是其他的应用程序啦
- 结束该进程,输入taskkill /f /t /im 你的进程名,例如adb.exe,如下图,在重新连接手机,这时候你会发现程序运行起来了
第二种:
问题描述:在eclipse的Logcat出现错误
[2014-01-08 14:00:07 - adb] ADB server didn't ACK [2014-01-08 14:00:07 - adb] * failed to start daemon * [2014-01-08 14:07:24 - adb] ADB server didn't ACK [2014-01-08 14:07:24 - adb] * failed to start daemon *
解决方法:先找到adb服务是否绑定端口出现问题,如果真的是绑定端口出现问题,找出该端口被哪个进程占据,最后杀掉这个进程。
1. 首先通过CMD启动adb服务。这个时候会提示启动失败。 E:\android-SDK-4.2\android-sdk\platform-tools>adb start-server adb server is out of date. killing... ADB server didn't ACK * failed to start daemon * 2. 服务启动失败的原因有很多,但一般是端口绑定失败。我们来查看一下端口绑定信息。如图所示,真的是端口绑定出了问题。 E:\android-SDK-4.2\android-sdk\platform-tools>adb nodaemon server cannot bind 'tcp:5037' 3. 我们来看看哪个服务占用了这个端口。这里面有2个进程占用了这个端口。 E:\android-SDK-4.2\android-sdk\platform-tools>netstat -ano | findstr "5037" TCP 127.0.0.1:5037 0.0.0.0:0 LISTENING 5456 TCP 127.0.0.1:5037 127.0.0.1:1221 TIME_WAIT 0 TCP 127.0.0.1:5037 127.0.0.1:1222 TIME_WAIT 0
在控制台下杀死在5456端口监听的进程
E:\android-SDK-4.2\android-sdk\platform-tools>taskkill /pid 5456 错误: 无法终止 PID 为 5456 的进程。 原因: 只能强行终止这个进程(带 /F 选项)。 E:\android-SDK-4.2\android-sdk\platform-tools>taskkill /pid 5456 /f 成功: 已终止 PID 为 5456 的进程。
杀死造成问题的进程,再执行前面的命令
E:\android-SDK-4.2\android-sdk\platform-tools>netstat -ano | findstr "5037"
E:\android-SDK-4.2\android-sdk\platform-tools>adb nodaemon server