Android Note:常用 Android Debug Bridge (adb) 功能

我常用的 adb 功能。

設定 Path 環境變數

Windows

Android Studio 隨附的 adb 所在路徑:
C:\Users\username\AppData\Local\Android\Sdk\platform-tools

控制台\系統及安全性\系統、進階系統設定、環境變數、系統變數:Path:瀏覽:找到上述路徑、確定。

打開 command line tool 輸入:adb 跳出資訊表示設置成功,之後在任何資料夾都能直接呼叫 adb;若未設置 Path 環境變數,要使用 adb 必須進到存放 adb 的路徑。

TCP/IP 連接設備

command line tool
1
$ adb connect device_ip_address[:PORT]

default port=5555。

切斷 TCP/IP 連接

command line tool
1
$ adb disconnect [device_ip_address[:PORT]]

不指定會切斷所有連接。

列出所有連接設備

command line tool
1
$ adb devices [-l]

預設會列出 adb 給這些設備指定的 serial number 與 state。
加上 -l (long output) 會印出設備詳細資訊:device product、model、device、transport_id。

指定設備下指令

若連接了多台設備,要先知道設備的 serial number 才能指定個別設備下指令。

command line tool
1
$ adb -s serial_number adb_command

下載 Logcat

即使機器使用當下沒有連接監視設備,事後接上機器也能下載。

及時寫在 command line:

command line tool
1
adb logcat

並寫入特定檔案至當前資料夾:

command line tool
1
adb logcat -d > crash.txt

從特定位置擷取Logcat:

command line tool
1
adb logcat > schedule.txt

結束擷取:
Ctrl + C

下載 Bugreport

command line tool
1
adb bugreport

要回報錯誤報告給開發商時才要下載此檔案,回報時需使用.zip檔案格式。

安裝 App

command line tool
1
$ adb install path_to_apk

文件傳輸

設備複製到本地

command line tool
1
$ adb pull remote_path local_path

本地複製到設備

command line tool
1
$ adb push local_path remote_path

path 可以是文件或目錄。

重啟設備

command line tool
1
$ adb reboot

root 權限

以 root 權限重啟 adbd

command line tool
1
$ adb root

以非 root 權限重啟 adbd

command line tool
1
$ adb unroot

停止 adb server

command line tool
1
$ adb kill-server

會斷絕所有連接,需要重新連,通常是 adb 出問題時才會用到這個指令。

下 shell 指令

基本上 Android 的 shell 指令是用指令操作 Android 設備時的精華。

command line tool
1
$ adb shell [shell_command]

Android 本質是 Linux 核心擴增的框架,因此能對其使用 Unix 指令。
不直接下指令可以進入交互式 shell,可以使用 Ctrl + D 或輸入 exit 離開。

模擬按鍵輸入

command line tool
1
$ input keyevent keycode

KeyEvent

activity manager

算是最重要的 Android Shell 指令,可以操作 Android 主要元件。

command line tool
1
$ am am_command

啟動 Activity

command line tool
1
$ am start [options] intent

啟動 Service

command line tool
1
$ am start [options] intent

啟動 Broadcast

command line tool
1
$ am broadcast [options] intent

package manager

管理 App 的。

command line tool
1
$ pm pm_command

參考資料

command: adb help

Android Debug Bridge (adb)
关于 adb 命令你所需要知道的