Android:ADB server didn't ACK或者adb server is out of date. killing解决办法
2016-06-07 17:03
567 查看
欢迎关注公众号,每天推送Android技术文章,二维码如下:(可扫描)
出现这个原因我个人感觉有两个。一、5037端口被别的程序或者进程占用;二、adb占用的不是5037端口。很多人仅仅知道第一种二忽视了第二种。
不管哪个原因,解决问题的办法都一样。这里做一个整理如下:
1. 错误信息:
C:\Users\lizy>adb devices
adb devicesadb server is out of date. killing...
ADB server didn't ACK* failed to start daemon *error: unknown host service
2. 原因:
adb的端口(5037)被占用了。至于这个5037端口,可以参考本博客另外 一篇文章:
http://blog.csdn.net/liranke/article/details/4999210
在这个文章里,详细说明了adb的原理及其源码分析。
3. 解决方法:
在cmd窗口:
C:\Users\lizy>adb nodaemon server
cannot bind 'tcp:5037'
C:\Users\lizy>netstat -ano | findstr "5037"
TCP 127.0.0.1:5037 0.0.0.0:0 LISTENING 8516
TCP 127.0.0.1:5037 127.0.0.1:59163 TIME_WAIT 0
TCP 127.0.0.1:5037 127.0.0.1:59164 TIME_WAIT 0
TCP 127.0.0.1:5037 127.0.0.1:59167 TIME_WAIT 0
......
C:\Users\lizy>tasklist | findstr "8516"
sjk_daemon 8516 Console 1 3,071 K
哦,原来是sjk_daemon进程占了adb的端口。
C:\Users\lizy>tasklist
Image Name PID Session Name Session# Mem Usage
========================= ======== ================ =========== ============
System Idle Process 0 Services 0 24 K
System 4 Services 0 1,128 K
sjk_daemon 963 Console 1 3,071 K
tasklist.exe 1260 Console 1 5,856 K
将这个进程kill掉:
C:\Users\lizy>taskkill /f /pid 963
如果这个命令提示无权限,那么,可以去windows的“任务管理器”中“进程”那个窗口,找到这个进程,将它杀掉。
再运行adb devices,就没有问题了。
C:\Users\lizy>adb devices
4df7f482396a301d device
最后别忘了重启eclipse和模拟器。
出现这个原因我个人感觉有两个。一、5037端口被别的程序或者进程占用;二、adb占用的不是5037端口。很多人仅仅知道第一种二忽视了第二种。
不管哪个原因,解决问题的办法都一样。这里做一个整理如下:
1. 错误信息:
C:\Users\lizy>adb devices
adb devicesadb server is out of date. killing...
ADB server didn't ACK* failed to start daemon *error: unknown host service
2. 原因:
adb的端口(5037)被占用了。至于这个5037端口,可以参考本博客另外 一篇文章:
http://blog.csdn.net/liranke/article/details/4999210
在这个文章里,详细说明了adb的原理及其源码分析。
3. 解决方法:
在cmd窗口:
C:\Users\lizy>adb nodaemon server
cannot bind 'tcp:5037'
C:\Users\lizy>netstat -ano | findstr "5037"
TCP 127.0.0.1:5037 0.0.0.0:0 LISTENING 8516
TCP 127.0.0.1:5037 127.0.0.1:59163 TIME_WAIT 0
TCP 127.0.0.1:5037 127.0.0.1:59164 TIME_WAIT 0
TCP 127.0.0.1:5037 127.0.0.1:59167 TIME_WAIT 0
......
C:\Users\lizy>tasklist | findstr "8516"
sjk_daemon 8516 Console 1 3,071 K
哦,原来是sjk_daemon进程占了adb的端口。
C:\Users\lizy>tasklist
Image Name PID Session Name Session# Mem Usage
========================= ======== ================ =========== ============
System Idle Process 0 Services 0 24 K
System 4 Services 0 1,128 K
sjk_daemon 963 Console 1 3,071 K
tasklist.exe 1260 Console 1 5,856 K
将这个进程kill掉:
C:\Users\lizy>taskkill /f /pid 963
如果这个命令提示无权限,那么,可以去windows的“任务管理器”中“进程”那个窗口,找到这个进程,将它杀掉。
再运行adb devices,就没有问题了。
C:\Users\lizy>adb devices
4df7f482396a301d device
最后别忘了重启eclipse和模拟器。
相关文章推荐
- Android:ADB server didn't ACK或者adb server is out of date. killing解决办法
- android的学习路线
- Android之JNI错误:no implementation found in native -java.lang.UnsatisfiedLinkError: Native method not
- android 策略设计模式使用
- 项目导入出现红色感叹号并console报错project has no project····
- 说说Android的广播(3) - 什么样的广播是并发的?
- android:访问邮件软件发送邮件功能实现。
- ubuntu下的android studio jni生成c++动态库的调用方法及排错(ndk生成的动态库调用)
- Android中级教程之----Log图文详解
- Android 点击空白页关闭软键盘
- Github Android Client
- 打包时Fragment需要注意的一些问题
- material-calendarview日历控件详解,使用方法
- Android Annotation框架初步实践
- Android原理揭秘之APk生成过程
- Android day7
- Android摄像头视频帧数据测试代码
- Android下pm 命令详解
- android 拼图游戏
- Android 高清加载巨图方案 拒绝压缩图片