- 首先確認端口是否被占用 ,Terminal 窗口下:
adb start-server
嘗試開啟 adb 的服務,輸出如下:
E:\Android\MyApplication>adb start-server
adb server version (31) doesn't match this client (39); killing...
error: could not install *smartsocket* listener: cannot bind to 127.0.0.1:5037: 通常每個套接字地址(協議/網絡地址/端口)只允許使用一次。 (10048)
錯誤提示 5037 端口被占用了。
- 接著查看端口 5037 被什么占用了:
netstat -aon|findstr "端口號"
輸出中提示 5037 被 PID 為 21188 的進程占用了。
E:\Android\MyApplication>netstat -aon|findstr "5037"
TCP 127.0.0.1:5037 0.0.0.0:0 LISTENING 21188
TCP 127.0.0.1:5037 127.0.0.1:9633 ESTABLISHED 21188
TCP 127.0.0.1:5037 127.0.0.1:9634 ESTABLISHED 21188
TCP 127.0.0.1:5037 127.0.0.1:9637 ESTABLISHED 21188
TCP 127.0.0.1:5037 127.0.0.1:9639 ESTABLISHED 21188
TCP 127.0.0.1:5037 127.0.0.1:10055 ESTABLISHED 21188
TCP 127.0.0.1:5037 127.0.0.1:11461 TIME_WAIT 0
TCP 127.0.0.1:5037 127.0.0.1:11468 TIME_WAIT 0
TCP 127.0.0.1:5037 127.0.0.1:11477 TIME_WAIT 0
TCP 127.0.0.1:5037 127.0.0.1:11484 TIME_WAIT 0
TCP 127.0.0.1:5037 127.0.0.1:11491 TIME_WAIT 0
TCP 127.0.0.1:5037 127.0.0.1:11498 TIME_WAIT 0
TCP 127.0.0.1:5037 127.0.0.1:11505 TIME_WAIT 0
- 然后就可以在任務管理器的「詳細信息」中用 PID 找到這個對應的進程:
任務管理器->詳細信息
如果這里的進程不是 adb 就停止它,然后再嘗試開啟服務。