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