關於錯誤
使用 adb 命令的過程中,有的時候正常,有的時候會出現以下錯誤,而且很奇怪的是,有的時候命令行不能用,但是用 Android Studio 還能安裝應用也是神奇了。
daemon not running.
starting it now on port 5037
ADB server didn't ACK
failed to start daemon
error: cannot connect to daemon
嘗試的方法,但是失敗了,例如:
使用 adb kill-server
adb start-server
均無效。
使用 netstat -an | grep "5037"
查看佔用,也只有 Android Studio 一個進程。強制關閉重啓也無用。
原因 & 解決方法
後來查到有人說,是因爲 platform-tools 25.0.4 版本有 bug,升級或者降級一下即可。
嘗試從 25.0.4 升級到 27.0.1 後,問題解決。雖然無法確認是否是根本原因,但至少到目前爲止,adb 錯誤沒有再次出現過。
如果你想要升級 platform-tools ,有以下幾種方法:
- 使用 Android Studio 中提供 SdkManager 圖形化工具升級(推薦使用)。
- 使用 sdk 提供的 sdkmanager 命令行更新。
- 手動下載 platform-tools 包,然後去 sdk 目錄中自行替換。
Android Studio 升級 platform-tools
1.Tools > Android > SDK Manager 或點擊工具欄中的 SDK Manager 。
2.SDK Tools 中可以看到現在使用 platform-tools 版本。
- 如果有更新版本,左側複選框中會顯示短劃線。選中將複選框變成對勾,就會出現綠色的下載圖標。
- 如果沒有新版本,複選框中會顯示對勾。 選中取消對勾的話,會出現出現紅色的卸載圖標。
因爲我目前使用的已經是是最新版本,所以是對勾,但是我在下面的 SDK Tools 中有新版本可以更新,我特意點出來綠色的下載圖標,大家可以看一下。
3.如果點擊綠色小圖標,就可以點擊下載更新了。
sdkmanager 命令行更新 platform-tools
sdkmanager 是 Android SDK 提供的一個命令行工具,可以查看,安裝,更新和卸載SDK中的安裝包。位置在 your-sdk-path/tools/bin 中,官方命令說明看這裏 。
首先要進入 your-sdk-path/tools/bin 路徑中,才能使用 sdkmanager 命令。
如果想更新 platform-tools 到最新的話,需要使用的命令行是:
./sdkmanager "platform-tools" //只更新 platform-tools
./sdkmanager --update //更新所有 SDK 安裝包到最新版本
下面用命令更新了 Tools 的最新版本:
手動升級 platform-tools
1.去官網下載新版本 platform-tools 包。下載地址在這裏呢
2.去 SDK 文件夾中替換 platform-tools 文件夾。