0x00 error: unknown host service
进adb shell时,明明已经打开设备的开发者模式,却还是连不上:
adb server is out of date. killing...
ADB server didn't ACK
* failed to start daemon *
error: unknown host service
其实出现这问题很多是因为adb端口冲突,可能你电脑上除了在终端尝试用adb连接手机,还可能因为之前开的虚拟机,端口没有回收。或者,Android Studio、Eclipse、刷机软件等,只要通过adb和手机连接的软件都可能会和终端下的adb冲突。
那么问题又来了,为什么能开多个终端用adb连手机,在多个软件上用adb连接就会端口冲突呢?
因为终端下的adb,都是系统环境变量的adb,而大部分能够连接并调试手机的软件,装上它之时,它本身就会装adb,也就是说,它们有自带的adb.exe,而与系统环境变量的adb.exe不是同一进程,所以5037端口(adb连接手机的默认端口)就会被占用。
搞清楚问题的原因,我们就找解决办法:
-
在cmd下, 找到占用(Listening)5037端口的程序:
- 在管理员模式下的Powershell或者cmd去kill进程:
-
最后,能成功用adb连上手机: