排解 ffx starnix adb connect 問題

如果裝置無法透過 USB 使用 adb,您可以使用 ffx starnix adb connect 指令,讓在 Starnix 中執行 Android 的裝置,可供開發機器上的 adb 伺服器查看。

這個指令會取得 adb,以便透過 TCP 連線至裝置,並使用 ffx 提供的網路位址進行連線。

這個指令可能會失敗,原因有幾種,本頁面提供解決常見問題的指引。

多部 adb 裝置

當多部 Android 裝置連線至開發機器,或 Android 裝置在模擬器中執行時,您可能會看到 adb 的錯誤訊息,指出有多部裝置存在,但它不知道要使用哪一部裝置。

如要確認開發機器的 adb 伺服器是否可看到多部裝置,請執行以下命令:

adb devices -l

如果輸出內容列出多部裝置,您需要為 adb 指令指定一台裝置。

如要找出裝置的 ID,請執行:

ffx starnix adb connect

輸出結果應類似以下:

...
adb is connected!
See https://fuchsia.dev/go/troubleshoot-adb-connect if it doesn't work.
This connection's "serial number" for adb is ADB_CONNECTION_ADDRESS.

請取得上述指令列印的序號,然後將其做為引數傳遞至 adb 指令:

adb -s ADB_CONNECTION_ADDRESS shell ...

或者,您也可以在 Shell 中設定環境變數,後續的 adb 指令會使用這個變數:

export ANDROID_SERIAL=ADB_CONNECTION_ADDRESS

接著,正常使用 adb 指令。