Android 調(diào)試橋 (adb)官網(wǎng)
Android Debug Bridge (ADB) 是 Android 開發(fā)和調(diào)試中非常強大的命令行工具,它能讓你像一位指揮官一樣,通過電腦對連接的 Android 設(shè)備(手機、平板、模擬器等)下達各種指令。
下面為你整理了最常用和實用的 ADB 命令,方便你查閱和使用。
?? 準(zhǔn)備工作與基本操作
在使用 ADB 命令之前,需要先完成一些基礎(chǔ)設(shè)置和了解最基本的命令。
| 功能分類 | 命令 | 說明 |
|---|---|---|
| 準(zhǔn)備工作 | - | 1. 開啟開發(fā)者選項:在設(shè)備的“設(shè)置” -> “關(guān)于手機”中,連續(xù)點擊“版本號”7次。 2. 開啟USB調(diào)試:返回“設(shè)置” -> “系統(tǒng)” -> “開發(fā)者選項”,找到并開啟“USB調(diào)試”。 3. 連接設(shè)備:用USB線將設(shè)備連接到電腦。 |
| 服務(wù)管理 | adb start-server |
啟動 ADB 服務(wù)(通常連接設(shè)備時會自動啟動)。 |
adb kill-server |
停止 ADB 服務(wù)。當(dāng) ADB 出現(xiàn)問題(如無法識別設(shè)備)時,可以先執(zhí)行此命令再重啟。 | |
| 設(shè)備連接 | adb devices |
列出當(dāng)前連接電腦的所有 Android 設(shè)備序列號及狀態(tài)。這是最常用的命令,用于確認(rèn)設(shè)備是否成功連接。 |
adb connect <設(shè)備IP地址>:<端口> |
通過 Wi-Fi 連接到設(shè)備(需要先通過USB連接并執(zhí)行 adb tcpip 5555 開啟網(wǎng)絡(luò)模式)。 |
|
adb disconnect <設(shè)備IP地址>:<端口> |
斷開 Wi-Fi 連接。 | |
| 多設(shè)備操作 | adb -s <設(shè)備序列號> <命令> |
當(dāng)連接了多個設(shè)備時,使用此命令指定要對哪臺設(shè)備執(zhí)行操作。設(shè)備序列號可通過 adb devices 獲取。 |
?? 應(yīng)用管理
這部分命令主要用來安裝、卸載和管理設(shè)備上的應(yīng)用程序(App)。
| 命令 | 說明 |
|---|---|
adb install <apk文件路徑> |
安裝一個安卓應(yīng)用安裝包(APK)文件到設(shè)備。 |
adb install -r <apk文件路徑> |
覆蓋安裝應(yīng)用,同時保留應(yīng)用的數(shù)據(jù)和緩存文件。 |
adb uninstall <應(yīng)用包名> |
卸載應(yīng)用。 |
adb uninstall -k <應(yīng)用包名> |
卸載應(yīng)用但保留其數(shù)據(jù)和緩存目錄。 |
adb shell pm list packages |
列出設(shè)備上所有應(yīng)用的包名。 |
adb shell pm list packages -3 |
僅列出第三方應(yīng)用的包名。 |
adb shell pm list packages -s |
僅列出系統(tǒng)應(yīng)用的包名。 |
adb shell pm clear <應(yīng)用包名> |
清除指定應(yīng)用的所有數(shù)據(jù)(相當(dāng)于在設(shè)置里點“清除存儲空間”)。 |
adb shell am start -n <應(yīng)用包名>/<活動類名> |
啟動應(yīng)用的特定界面(Activity)。例如,adb shell am start -n com.android.settings/.Settings 可以直接打開設(shè)置。 |
adb shell am force-stop <應(yīng)用包名> |
強制停止指定應(yīng)用。 |
?? 文件管理
方便地在電腦和手機之間傳輸文件。
| 命令 | 說明 |
|---|---|
adb pull <設(shè)備內(nèi)文件路徑> <電腦目標(biāo)路徑> |
將文件從設(shè)備復(fù)制到電腦。如果省略電腦路徑,則默認(rèn)復(fù)制到當(dāng)前目錄。 |
adb push <電腦文件路徑> <設(shè)備目標(biāo)路徑> |
將文件從電腦復(fù)制到設(shè)備。 |
?? 設(shè)備信息與狀態(tài)
用于查看設(shè)備的硬件、軟件和狀態(tài)信息。
| 命令 | 說明 |
|---|---|
adb shell getprop ro.build.version.release |
查看 Android 系統(tǒng)版本。 |
adb shell getprop ro.product.model |
查看設(shè)備型號。 |
adb shell wm size |
查看設(shè)備屏幕分辨率。 |
adb shell wm density |
查看設(shè)備屏幕密度(dpi)。 |
adb shell dumpsys battery |
查看電池狀態(tài)信息(如是否在充電、電量百分比等)。 |
adb shell cat /proc/cpuinfo |
查看設(shè)備 CPU 信息。 |
adb shell cat /proc/meminfo |
查看設(shè)備內(nèi)存信息。 |
?? 日志與屏幕操作
開發(fā)和調(diào)試中非常實用的功能。
| 功能分類 | 命令 | 說明 |
|---|---|---|
| 日志查看 | adb logcat |
實時查看設(shè)備和應(yīng)用的日志輸出,對分析應(yīng)用崩潰(Crash)等問題至關(guān)重要。 |
adb logcat -c |
清除(清空)舊的日志緩沖區(qū)。 | |
| 截屏錄屏 | adb shell screencap /sdcard/screenshot.png |
對當(dāng)前屏幕進行截圖,并保存到設(shè)備指定路徑。 |
adb shell screenrecord /sdcard/screen.mp4 |
錄制設(shè)備屏幕操作,按 Ctrl+C 停止錄制。 |
??? 模擬操作
讓設(shè)備模擬用戶的按鍵、點擊、滑動等操作。
| 命令 | 說明 |
|---|---|
adb shell input keyevent <鍵值> |
模擬按鍵事件。例如 adb shell input keyevent 3 模擬按下 Home 鍵,adb shell input keyevent 4 模擬按下返回鍵。 |
adb shell input tap <x坐標(biāo)> <y坐標(biāo)> |
模擬點擊屏幕上的指定坐標(biāo)點。 |
adb shell input swipe <起點x> <起點y> <終點x> <終點y> [毫秒數(shù)] |
模擬滑動操作??梢灾付ɑ瑒铀玫臅r間(毫秒)。 |
adb shell input text "<輸入內(nèi)容>" |
在當(dāng)前獲得焦點的輸入框中輸入指定文本(注意用空格轉(zhuǎn)義)。 |
?? 高級與系統(tǒng)操作
針對更深入的調(diào)試和系統(tǒng)層面的操作。
| 命令 | 說明 |
|---|---|
adb reboot |
重啟設(shè)備。 |
adb reboot bootloader |
重啟設(shè)備到 Bootloader 模式(刷機模式)。 |
adb reboot recovery |
重啟設(shè)備到 Recovery 模式(恢復(fù)模式)。 |
adb root |
以 root 權(quán)限重啟 adbd 守護進程。需要設(shè)備已獲取 root 權(quán)限,以便執(zhí)行更高權(quán)限的命令。 |
這里整理的是一些最常用的命令,如果你想深入了解某個特定命令(比如 dumpsys 或 pm 的更多用法),隨時可以再問我。