Android ADB server didn't ACK * failed to start daemon * 简单有效的解决方案
2015-08-18 14:26
375 查看
转载请注明出处:/article/1645801.html
ADB server didn't ACK 这个问题会困恼很多的新手朋友,我以前刚开始做Android的时候也遇到过这个问题,不过自己百度,google啥的,也不知道怎么就给解决了,看到群里很多新手朋友都会问这个问题,说实话我也没有一个解决这个问题的终极方法(百试百灵的那种,哈哈),自己没遇到也没有认真的去对待他,今天,就是在今天,我打开Eclipse连上手机,准备调试程序,出现如下的信息
[plain] view
plaincopy
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.
然后我就按照他的要求来做,重启Eclipse和adb,然后确认adb的路径是否正确,然后当我再次运行程序的时候,依旧不行,之后我就开始百度了,有朋友说先在DOS下运行adb kill-server(你必须在环境变量中配好你adb的路径或者进入到adb.exe的目录下),然后在adb start-server,当我运行adb start-server的时候,DOS出现如下信息
[plain] view
plaincopy
* daemon not running. starting it now *
ADB server didn't ACK
* failed to start daemon *
然后在运行程序还是不行,重复搞了很多次老不行,还有朋友说在任务管理器找到adb.exe,然后关闭,重启Eclipse,我打开任务管理器,发现根本没有找到adb.exe,这时候我流泪满面了,然后我冷静下来,知道有些朋友遇到这个错误是因为豌豆荚啥的软件占用了adb.exe的端口,我的电脑里面根本没有按照豌豆荚,然后我想看看是谁占用adb的端口,我从网上查到adb.exe使用的端口是5037,接下来我给大家介绍解决方法
查看5037端口被谁占用了,开始--运行--CMD 到命令提示符,输入 netstat -aon|findstr "5037",如下图
我们从上面根本就看不出5037端口被谁占用,我们需要根据后面的PID(2748)来查找占用该端口的应用程序,输入 tasklist|findstr "2748" ,如下图
注: 我这里5037端口是正确的被adb.exe占用,如果是你,就是其他的应用程序啦
结束该进程,输入taskkill /f /t /im 你的进程名,例如adb.exe,如下图,在重新连接手机,这时候你会发现程序运行起来了
这个问题虽然不是什么很大的问题,但是对于新手来说也是属于比较棘手的问题,所以我将自己解决此问题的方法在这里记录下,希望能给遇到此问题的人一点点帮助,如果我写得文章对你一点帮助请帮我顶一下文章,谢谢!
ps:
----------
我的机子查看的是tadb.exe占用了.经过搜索别人的解答原来是QQ监控安卓设备的.对QQ“设置”-“提醒”-"Android设备连接提醒"勾去掉就行。
2013-11-29,今天又查看到有以下程序占用.
C:\Users\Administrator>tasklist|findstr "2164"
360MobileMgr.exe 2164 Console 1 11,880 K
我们做调试也许要小心其他各种会连接手机的程序都有可能占用调试端口. 道理很简单,不占用,怎么自动检测你手机连上线呢?
ADB server didn't ACK 这个问题会困恼很多的新手朋友,我以前刚开始做Android的时候也遇到过这个问题,不过自己百度,google啥的,也不知道怎么就给解决了,看到群里很多新手朋友都会问这个问题,说实话我也没有一个解决这个问题的终极方法(百试百灵的那种,哈哈),自己没遇到也没有认真的去对待他,今天,就是在今天,我打开Eclipse连上手机,准备调试程序,出现如下的信息
[plain] view
plaincopy
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.
然后我就按照他的要求来做,重启Eclipse和adb,然后确认adb的路径是否正确,然后当我再次运行程序的时候,依旧不行,之后我就开始百度了,有朋友说先在DOS下运行adb kill-server(你必须在环境变量中配好你adb的路径或者进入到adb.exe的目录下),然后在adb start-server,当我运行adb start-server的时候,DOS出现如下信息
[plain] view
plaincopy
* daemon not running. starting it now *
ADB server didn't ACK
* failed to start daemon *
然后在运行程序还是不行,重复搞了很多次老不行,还有朋友说在任务管理器找到adb.exe,然后关闭,重启Eclipse,我打开任务管理器,发现根本没有找到adb.exe,这时候我流泪满面了,然后我冷静下来,知道有些朋友遇到这个错误是因为豌豆荚啥的软件占用了adb.exe的端口,我的电脑里面根本没有按照豌豆荚,然后我想看看是谁占用adb的端口,我从网上查到adb.exe使用的端口是5037,接下来我给大家介绍解决方法
查看5037端口被谁占用了,开始--运行--CMD 到命令提示符,输入 netstat -aon|findstr "5037",如下图
我们从上面根本就看不出5037端口被谁占用,我们需要根据后面的PID(2748)来查找占用该端口的应用程序,输入 tasklist|findstr "2748" ,如下图
注: 我这里5037端口是正确的被adb.exe占用,如果是你,就是其他的应用程序啦
结束该进程,输入taskkill /f /t /im 你的进程名,例如adb.exe,如下图,在重新连接手机,这时候你会发现程序运行起来了
这个问题虽然不是什么很大的问题,但是对于新手来说也是属于比较棘手的问题,所以我将自己解决此问题的方法在这里记录下,希望能给遇到此问题的人一点点帮助,如果我写得文章对你一点帮助请帮我顶一下文章,谢谢!
ps:
----------
我的机子查看的是tadb.exe占用了.经过搜索别人的解答原来是QQ监控安卓设备的.对QQ“设置”-“提醒”-"Android设备连接提醒"勾去掉就行。
2013-11-29,今天又查看到有以下程序占用.
C:\Users\Administrator>tasklist|findstr "2164"
360MobileMgr.exe 2164 Console 1 11,880 K
我们做调试也许要小心其他各种会连接手机的程序都有可能占用调试端口. 道理很简单,不占用,怎么自动检测你手机连上线呢?
相关文章推荐
- Android笔记:ListView
- android 通过eclipse混淆代码 打包 + proguard 总结
- 一个解决android多渠道打包的问题插件之(兰贝壳儿)
- Android四大组件之服务-Service 原理和应用开发详解
- 浅谈接口回调以及在Android中的使用
- android问题
- 从零开始--系统深入学习Android
- android 16进制/10进制/2进制转换
- Android Studio 快捷键 (Mac OS X 10.5+)
- Android开发设置软键盘收索键
- 《开源项目系列》 --- 简阅
- Android Studio NDK 学习之接受Java传入的字符串
- 基于android 图像基本处理项目demo源码释放(jarlen)
- Android Edittext 开发常见问题总结(焦点、输入、键盘弹出等)
- 开发Android硬件访问服务
- Android源码分析之Handler机制
- Activity 生命周期
- Android对话框的几种形式
- 关于AndroidStudio导入项目报错的问题
- android Fragment