發布 Android 應用程式給使用者前,請務必先在實際裝置上進行測試。本頁說明如何設定開發環境和 Android 裝置,以便透過 Android Debug Bridge (ADB) 連線進行測試及偵錯。
設定開發用裝置
在裝置上開始執行偵錯前,請先決定要使用 USB 傳輸線還是 Wi-Fi 連接裝置。接著,按照下列步驟操作:
在裝置上開啟「設定」應用程式,選取「開發人員選項」,然後啟用「USB 偵錯」(如適用)。
設定讓系統偵測裝置。
- ChromeOS:無須進行額外設定。
- macOS:無須進行額外設定。
- Windows:安裝 ADB 的 USB 驅動程式 (如適用)。如需安裝指南和原始設備製造商 (OEM) 驅動程式的連結,請參閱「安裝原始設備製造商 (OEM) USB 驅動程式」一文。
Ubuntu Linux:設定下列項目:
- 凡是要使用 ADB 的使用者,都需加入
plugdev
群組。如果您看到錯誤訊息,指出您不屬於plugdev
群組,請使用下列指令將自己加入群組:
sudo usermod -aG plugdev $LOGNAME
群組只會在登入時更新,因此您必須先登出,這項變更才會生效。重新登入後,您可以使用
id
確認自己是否在plugdev
群組中。- 系統需要安裝適用於裝置的
udev
規則。android-sdk-platform-tools-common
套件包含由社群維護、適用於 Android 裝置的udev
預設規則組合。如要安裝這個套件,請使用下列指令:
apt-get install android-sdk-platform-tools-common
- 凡是要使用 ADB 的使用者,都需加入
使用 USB 連接裝置
當您完成設定並透過 USB 連接裝置後,只要在 Android Studio 中按一下「Run」圖示 ,即可在裝置上建構及執行應用程式。
您也可以使用 adb
下達指令,方法如下:
- 從
android_sdk/platform-tools/
目錄執行adb devices
指令,確認裝置已連線。如果已連線,畫面上就會列出該裝置。 - 使用
-d
旗標下達任何adb
指令,以便指定裝置。
使用 Wi-Fi 連接裝置
Android 11 以上版本支援透過 Android Debug Bridge (adb) 從工作站以無線方式部署應用程式,並進行偵錯。舉例來說,您可以將可進行偵錯的應用程式部署至多部遠端裝置,不僅不必實際透過 USB 連接裝置,也不用處理常見的 USB 連線問題 (例如安裝驅動程式)。
如要使用無線偵錯功能,您必須使用配對碼將裝置與工作站配對。請完成下列步驟即可開始:
- 確認工作站和裝置已連上同一個無線網路。
- 確認您的裝置搭載 Android 11 以上版本。詳情請參閱「檢查及更新 Android 版本」。
- 確認您已安裝最新版的 Android Studio。請在這裡下載。
- 在工作站上,將 SDK Platform Tools 更新至最新版本。
如要連接裝置,請按照下列步驟操作:
- 開啟 Android Studio,接著從執行設定選單中選取「Pair Devices Using Wi-Fi」。
- 在裝置上啟用開發人員選項。
- 在裝置上啟用透過 Wi-Fi 偵錯功能。
- 輕觸「無線偵錯」,然後配對裝置:
- 如要透過 QR code 配對裝置,請選取「使用 QR code 配對裝置」,然後掃描 QR code,如圖 2 所示。
- 如要使用配對碼配對裝置,請從「透過 Wi-Fi 配對新裝置」對話方塊中選取「使用配對碼配對裝置」。在裝置上選取「使用配對碼配對」。畫面上隨即會顯示六位數的配對碼。當裝置出現在「Pair devices over Wi-Fi」視窗後,輸入裝置上顯示的六位數配對碼,然後選取「Pair」。
- 配對完成後,您可以嘗試在裝置上部署應用程式。
如何在工作站上配對不同裝置或移除這部裝置:
- 在裝置上前往「無線偵錯」。
- 在「配對的裝置」底下輕觸工作站名稱。
- 選取「移除裝置」。
裝置鏡像功能
您可以在 Android Studio 的「Running Devices」視窗中,為實體裝置建立鏡像。只要將裝置的畫面直接串流至 Android Studio,即可利用 Studio IDE 本身執行常用操作,例如啟動應用程式並與其互動、旋轉螢幕、折疊及展開手機,以及調整音量
每當有裝置連線至已啟用 USB/無線偵錯功能的電腦,就一律可以使用裝置鏡像功能。如要啟動及停止鏡像作業,請開啟「Running Devices」視窗或「Device Manager」(依序點選「View」>「Tool Windows」>「Device Manager」)。您也可以在設定 (依序點選「Settings」>「Tools」>「Device Mirroring」) 中自訂啟用裝置鏡像的時機。
重新導向音訊
使用裝置鏡像功能時,你可以將連線實體裝置的音訊重新導向至電腦喇叭或耳機。使用音訊轉接功能時,只要將耳機連上電腦,就能同時收聽電腦和已連結手機的音訊,無須手動重新連線。如要啟用音訊重新導向功能,請依序前往「File」 (在 macOS 上為「Android Studio」) >「Settings」 >「Tools」 >「Device Mirroring」,然後選取「Redirect audio from local devices」。請注意,對於執行 Android 12 以上版本的 Firebase Test Lab 裝置,無論設定為何,音訊一律會重新導向。
已知問題
部分裝置在編碼時,位元率可能不足以支援裝置鏡像功能。在這些情況下,您可能會在「Running Devices」視窗中看到錯誤,以及類似以下的記錄。
2023-06-01 15:32:22,675 [ 56094] WARN - ScreenSharingAgent Samsung SM-A045F API 33 - Too many video encoder errors:
2023-06-01 15:32:22,676 [ 56095] WARN - ScreenSharingAgent Samsung SM-A045F API 33 - encoder: c2.android.vp8.encoder
2023-06-01 15:32:22,676 [ 56095] WARN - ScreenSharingAgent Samsung SM-A045F API 33 - mime type: video/x-vnd.on2.vp8
2023-06-01 15:32:22,676 [ 56095] WARN - ScreenSharingAgent Samsung SM-A045F API 33 - max resolution: 640x640
2023-06-01 15:32:22,676 [ 56095] WARN - ScreenSharingAgent Samsung SM-A045F API 33 - min resolution: 2x2
2023-06-01 15:32:22,676 [ 56095] WARN - ScreenSharingAgent Samsung SM-A045F API 33 - alignment: 2x2
2023-06-01 15:32:22,676 [ 56095] WARN - ScreenSharingAgent Samsung SM-A045F API 33 - max frame rate: 960
2023-06-01 15:32:22,676 [ 56095] WARN - ScreenSharingAgent Samsung SM-A045F API 33 - max frame rate for 288x640: 960
2023-06-01 15:32:22,870 [ 56289] WARN - ScreenSharingAgent Samsung SM-A045F API 33 - max bitrate: 20000000
2023-06-01 15:32:22,871 [ 56290] WARN - ScreenSharingAgent Samsung SM-A045F API 33 - terminated with code 1
隱私權聲明
根據裝置的鏡像設定,Android Studio 可以針對任何已連結和配對的裝置,自動啟動裝置鏡像功能。在使用 adb tcpip
指令連線的裝置上,這可能會導致資訊外洩,因為鏡像資訊和指令是透過未加密的管道傳遞。此外,Android Studio 也會利用非加密管道與 ADB 伺服器通訊,因此主體機器上的其他使用者可能會攔截鏡像資訊。
排解裝置連線問題
如果裝置無法連線至 Android Studio,請嘗試按照下列步驟解決問題:
透過 Connection Assistant 排解問題
Connection Assistant 提供逐步說明,有助您透過 ADB 連線設定及使用裝置。
如要啟動這個小幫手,請依序選擇「Tools」>「Troubleshoot Device Connections」。
Connection Assistant 會在「Assistant」面板的一系列頁面中提供操作說明、關聯控制項和已連線的裝置清單。您可以使用「Assistant」面板底部的「Next」和「Previous」按鈕,視需要瀏覽相關頁面:
- 透過 USB 連接裝置:Connection Assistant 會先提示您透過 USB 連接裝置,並提供「Rescan USB devices」按鈕,讓您能夠啟動已連結裝置的新掃描作業。
- 啟用 USB 偵錯功能:Connection Assistant 接著會說明如何在裝置端開發人員選項中啟用 USB 偵錯功能。
- 重新啟動 ADB 伺服器:如果可用裝置清單仍未顯示您的裝置,可以使用 Connection Assistant 最後一頁的「Restart ADB server」按鈕。重新啟動 ADB 伺服器也會促使 ADB 再次掃描裝置。如果可用裝置清單還是沒有顯示您的裝置,請試試按照下一節的疑難排解步驟操作。
解決 USB 連線問題
如果 Connection Assistant 無法偵測到透過 USB 連接的裝置,請嘗試按照下列疑難排解步驟解決問題:
確認 Android Studio 可連線至 Android Emulator
如要檢查這個問題是否由 Android Studio 和 Android Emulator 之間的連線問題所引起,請按照下列步驟操作:
- 開啟裝置管理工具。
- 建立新的 AVD (如果您尚未建立的話)。
- 使用 AVD 執行模擬器。
- 執行下列其中一項操作:
- 如果 Android Studio 無法連線至模擬器,請下載最新的 SDK Platform Tools,然後再試一次。
- 如果模擬器成功啟動,請按照下一節的說明檢查 USB 傳輸線。
檢查 USB 傳輸線
如要檢查這個問題是否由 USB 傳輸線故障所引起,請按照本節說明的步驟操作。
如果您有其他 USB 傳輸線,請按照下列步驟操作:
- 使用次要傳輸線連接裝置。
- 檢查 Connection Assistant 現在是否能偵測到裝置。
- 如果系統沒有偵測到裝置,請再次使用主要傳輸線。
- 如果系統仍未偵測到裝置,請假設問題來自裝置,並按照下一節的說明,確認裝置是否已根據開發用途完成相關設定。
如果您沒有其他 USB 傳輸線,但擁有其他 Android 裝置,請按照下列步驟操作:
- 將次要裝置連接至電腦。
如果 Connection Assistant 可偵測到次要裝置,請假設問題來自主要裝置,並確認裝置是否已根據開發用途完成相關設定。
如果未偵測到次要裝置,則問題可能來自 USB 傳輸線。
確認裝置是否已根據開發用途完成相關設定
如要確認問題原因是否出在裝置設定,請按照下列步驟操作:
- 按照「設定開發用裝置」一節的步驟操作。
- 如果仍無法解決問題,請向裝置的原始設備製造商 (OEM) 客戶服務人員尋求協助,將裝置無法透過 ADB 連線至 Android Studio 的問題告知客戶服務代表。
解決無線連線問題
如果您無法以無線的方式連接裝置,請嘗試依照下列疑難排解步驟解決問題:
確認工作站和裝置是否符合必要條件
如要符合無線偵錯功能的必要條件,請確認下列項目:
- 工作站和裝置連上同一個無線網路。
- 裝置搭載 Android 11 以上版本。詳情請參閱「檢查及更新 Android 版本」。
- 已安裝最新版的 Android Studio。您可以前往 Android Studio 主頁面下載。
- 工作站已安裝最新版 SDK Platform Tools。
檢查其他已知問題
以下列出目前 Android Studio 無線偵錯功能的已知問題和解決方法:
- 無法連上 Wi-Fi:某些 Wi-Fi 網路 (例如企業 Wi-Fi 網路) 可能會封鎖 P2P 連線,進而導致您無法透過 Wi-Fi 連線。請嘗試使用傳輸線或其他 Wi-Fi 網路連線。
- 系統有時會自動停止透過 Wi-Fi 使用 ADB:如果裝置改用 Wi-Fi 網路或中斷網路連線,就可能會發生這種問題。
RSA 安全金鑰
將搭載 Android 4.2.2 (API 級別 17) 以上版本的裝置連接到電腦時,系統會顯示對話方塊,詢問您是否接受 RSA 金鑰,以便透過這部電腦進行偵錯。這項安全性機制可保護使用者裝置,因為除非您能解鎖裝置並確認對話方塊,否則無法執行 USB 偵錯和其他 adb
指令。