ADB全稱Android Debug Bridge。
ADB是一種功能多樣的命令行工具,起到了調試橋的做用,能夠用來操做Android設備。
ADB是Android開發/測試人員強大的工具。android
能夠說,ADB對咱們Android的開發相當重要,深刻的瞭解經常使用的命令和做用就顯得相當重要了shell
ADB使一種客戶端-服務器程序,包括如下三個組件:segmentfault
adb包含在Android SDK平臺工具軟件包當中,如何配置環境變量網上有太多的教程,咱們就不贅述了。緩存
環境變量配置完以後,咱們輸入adb,就會出現如下的一下命令提示。安全
除了這個截圖,後面還有不少的命令,接下來對咱們經常使用的命令行進行一下詳細的介紹。
看目錄咱們能夠知道,ADB分爲全局命令、常規命令、網絡命令、文件傳輸命令、
應用安裝命令、備份和恢復命令、調試命令、安全命令、腳本命令、內部調試命令、Shell命令。這幾種命令,對於每一種命令,官網上都有詳細的解釋
developer.android.google.cn/studio/comm…bash
接下來,對於經常使用的一些命令,我着重的介紹一下。服務器
全局選項 | 說明 |
---|---|
-a | 在全部網絡接口上監聽,而非只在localhost上監聽。 |
-d | 將adb命令發送到惟一鏈接的USB設備。若是鏈接了多個USB設備,則返回錯誤。 |
-e | 將adb命令發送到惟一運行的模擬器。若是有多個模擬器在運行,則返回錯誤。 |
-s serial_number | 將adb命令發送到以其adb分配的序列號命名的特定設備(例如「emulator-5556」)。替換存儲在 $ANDROID_SERIAL 環境變量中的序列號值。 |
-H server | adb服務器主機的名稱。默認值爲localhost。 |
-P port | adb服務端口號。默認值爲5037。 |
-L socket | 在提供的adb socket服務器的監聽。默認值爲tcp:localhost:5037。 |
啓動adb service命令:
adb start-server
可是,通常狀況下,咱們無需手動調用這個命令,在運行的adb命令時候發現adb service沒用啓動的時候纔會調用。微信
中止 adb service命令:
adb kill-server網絡
常規命令 | 說明 |
---|---|
devices [-l] | 輸出全部的設備列表。-l 選項用於包含設備的描述 |
help | 輸出支持的adb命令及其描述的列表 |
version | 輸出adb版本號 |
查看應用列表的的命令是
socket
adb shell pm list packages複製代碼
具體的內容包括
參數 | 顯示列表 |
---|---|
無 | 全部應用 |
-f | 顯示應用關聯的apk文件 |
-d | 只顯示disabled的應用 |
-e | 只顯示enable的應用 |
-s | 只顯示系統應 |
-3 | 只顯示第三方應用 |
-i | 顯示應用的installer |
-u | 包含已卸載應用 |
-<FILTER> | 包名包含<FILTER>字符串 |
adb install <apk file>
常見參數及含義
參數 | 含義 |
---|---|
-r | 容許覆蓋安裝 |
-s | 將應用安裝到sdcard |
-d | 容許降級覆蓋安裝 |
adb unstall [-k] <packagename>
其中 <packagename> 表示應用的包名,-k參數可選,表示卸載應用可是保留數據和緩存目錄。
adb shell pm clear <packagename>
<packagename>表示應用包名
[adb] logcat [<option>] ... [<filter-spec>] ...複製代碼
經常使用用法列舉以下:
1. 按級別過濾日誌
Android 的日誌分爲以下幾個級別:
V —— Verbose(最低,輸出得最多)
D —— Debug
I —— Info
W —— Warning
E —— Error
F —— Fatal
S —— Silent(最高,啥也不輸出)
按某級別過濾日誌則會將該級別及以上的日誌輸出。
好比,命令:
adb logcat *:W會將 Warning、Error、Fatal 和 Silent 日誌輸出。
2. 按 tag 和級別過濾日誌
好比,命令:
adb logcat MyApp:D *:S複製代碼
表示輸出
tag ActivityManager 的 Info 以上級別日誌。
adb shell am start [options] <INTENT>複製代碼
例如:
adb shell am start -n com.tencent.mm/.ui.LauncherUI複製代碼
adb bugreport複製代碼
developer.android.google.cn/studio/comm…
segmentfault.com/a/119000000…
加的人較多,請添加備註