在win xp ,win 7 上使用adb时, 越来越多的人出现了 adb devices 命令长时间无响应、adb start-server 失败、eclipse adt初始化时卡在dbms-init上等现象。
它们的根本原因均在于,adb server所使用的5037号端口被占用。
一种常见的解决方法是:
找出占用5037(我的改为60000)端口的程序,然后杀掉它。
1、关闭eclipse。
2、使用:netstat -aon | findstr "60000"来找到占用5037的进程ID。
3、使用:tasklist /fi "pid eq 3736查看pid为3736的进程。
4、在任务管理器进程中找到sjk_daemon.exe进程,结束它。
5、重启eclipse。
注:上述的方法在每次开机都要做一遍,麻烦。所以,这个方法并不是最优解。
另一种方法:
自己配置 adb server 端口,使用一个生僻的值。
很简单,只要在系统环境变量中定义 ANDROID_ADB_SERVER_PORT 的值即可。
最好选择一个5位数的端口号(10000 ~ 65535),不易重复。
win下只要在环境变量中增加一个ANDROID_ADB_SERVER_PORT ,值填你自己定义的端口。
linux下只要 export $ANDROID_ADB_SERVER_PORT = 自定义端口,即可。
这时打开一个命令行,输入adb devices,看看是不是在新的端口上启动了啊?