adb server version (31) doesn't match this client (41); killing...


  1、有時候用adb工具去連接安卓設備,或者模擬器的時候,會提示adb server version(31) doesn’t match this client(41)這樣的提示。如圖

  

 

    提示的字面意思就是當前client版本41,與server端的版本不匹配,當前版本過高引起的。注意,這里的client就是你電腦已經安裝的adb程序的版本,而server,也就是你的服務端,將要connect的設備。

  網上說出現這種不匹配只要下載對應的adb版本重新替換你之前安裝的adb就行了,對應的android studio 路徑就是你的android sdk 目錄的platform-tools文件夾里面的adb.exe程序。

  

    而事實上卻並非就解決問題。這是因為我的電腦安裝了360手機助手占用了adb的端口引起的。因為套接字的唯一性(一個套接字只能由 協議/網絡地址/端口號 唯一確定 ),一個電腦只能有一個程序關聯對應的端口,對於adb對應的端口就是5037。

  為了驗證5037端口是否被占用,可以用netstat -ano|findstr “5037” 去查找5037對應的端口號的進程id 也就是pid。

  

 

  果然,5037端口有相應的進程,我們試着去查找相應的進程對應的進程名稱,用tasklist |findstr “13656” ,刪除失敗

  通過在進程里查找,發現是360手機助手,只能卸載了。
  卸載后再次運行:adb devices 成功

  當然前提是確保手機正常連接到電腦,並且手機usb處於調試狀態。

  

 

 

  

 

 

 


免責聲明!

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



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