Android開發中遇到的問題(一)——Android模擬器端口被占用問題的解決辦法


一、問題描述

  今天在Eclipse中運行Android項目時遇到"The connection to adb is down, and a severe error has occured"這個問題,如下圖所示:

  

  第一次遇到這個問題,上網查了一下原因,原來"The connection to adb is down, and a severe error has occured"指的就是Android模擬器端口被占用了。

二、問題的排查過程

  既然是端口被占用了,現在就要看看到底是誰占用了端口。

  在sdk目錄下的platform-tools目錄中有一個adb.exe可執行程序,這個就是Android模擬器的啟動程序,如下圖所示:

  

  打開CMD命令行窗口,進入sdk目錄下的platform-tools目錄,輸入命令:adb start-serevr,如下圖所示:

  

  因為我在搭建Android開發環境時,已經將sdk目錄下的platform-tools目錄加入到Path環境變量中,如下:

  

  

  所以我在cmd命令中直接輸入命令:adb start-serevr是可以正常運行的,不再需要進入到進入sdk目錄下的platform-tools目錄。

  從上面的排查結果顯示來看,確實是端口被占用了,接下來需要確定被占用的端口號是多少,輸入命令:adb nodaemon server,如下圖所示:

  

  OK,現在確定了,端口5037被占用了,那就要找到究竟是誰敢占用5037端口。

  在cmd中輸入命令netstat -ano |findstr "5037",如下圖所示:

  

   原來是5040這個進程占用了端口,我們要把這個進程找出來,在cmd中輸入命令tasklist /fi "pid eq 5040",如下:

  

  OK,已經找到了,是一個名字為shuame_helper.exe,打開任務管理器,kill這個進程即可。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM