如何解决adb devices 端口被占用的问题

本文详细介绍了在Windows环境下使用ADB工具时遇到的端口占用问题,包括adbdevices命令长时间无响应、adbstart-server失败、Eclipse ADT初始化卡顿等问题的根源在于adbserver使用的5037端口被占用。提供了两种解决方案:一是找出并杀死占用该端口的进程,但此方法繁琐;二是通过配置自定义ADB服务器端口避免端口冲突,实现简便且长效。
摘要由CSDN通过智能技术生成

在win xp ,win 7 上使用adb时, 越来越多的人出现了 adb devices 命令长时间无响应、adb start-server 失败、eclipse adt初始化时卡在dbms-init上等现象。

它们的根本原因均在于,adb server所使用的5037号端口被占用。


一种常见的解决方法是:找出占用5037端口的程序,然后杀掉它。

使用:netstat -aon | findstr 127.0.0.1:5037 来找到占用5037的进程ID。

使用:kill -f pid 去杀掉它们。(或者在任务管理器 -进程中,结束进程。PS:需要事先在 windows任务管理器-查看-选择列,勾选PID)


我查询了机器上占用5037的进程,是系统svhost,它是一个service host,具体里面跑的什么服务则不得而知。但服务进程每一次开机都会运行。

所以,上述的方法在每次开机都要做一遍,麻烦。所以,这个方法并不是最优解。


另一种方法:

自己配置 adb server 端口,使用一个生僻的值。

很简单,只要在系统环境变量中定义 ANDROID_ADB_SERVER_PORT 的值即可。

最好选择一个5位数的端口号(10000 ~ 65535),不易重复。


win下只要在环境变量中增加一个ANDROID_ADB_SERVER_PORT ,值填你自己定义的端口。

linux下只要 export $ANDROID_ADB_SERVER_PORT = 自定义端口,即可。

这时打开一个命令行,输入adb devices,看看是不是在新的端口上启动了啊? 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值