[2] ADB 基本用法
基本用法
- 命令語法
- 為命令指定目標設備
- 啟動/停止
- 查看 adb 版本
- 以 root 權限運行 adbd
- 指定 adb server 的網絡端口
命令語法
adb 命令的基本語法如下:
adb [-d|-e|-s <serialNumber>] <command>如果只有一個設備/模擬器連接時,可以省略掉[-d|-e|-s <serialNumber>]這一部分,直接使用 adb <command>。
為命令指定目標設備
如果有多個設備/模擬器連接,則需要為命令指定目標設備
| -d | 指定當前唯一通過 USB 連接的 Android 設備為命令目標 |
| -e | 指定當前唯一運行的模擬器為命令目標 |
| -s | 指定相應 serialNumber 號的設備/模擬器為命令目標 |
在多個設備/模擬器連接的情況下較常用的是-s <serialNumber>參數,serialNumber可以通過 adb devices命令獲取。
如果沒有連接設備,會顯示空列表:
用USB連接一個安卓手機,然后打開開發者模式,再次輸入adb devices就可以查看到當前的設備:
輸出里的 9919daf7 即為 serialNumber。
比如這時想指定 9919daf7 這個設備來運行 adb 命令獲取屏幕分辨率:
啟動/停止
啟動 adb server 命令:
adb start-server(一般無需手動執行此命令,在運行 adb 命令時若發現 adb server 沒有啟動會自動調起。)
停止 adb server 命令:
adb kill-server查看 adb 版本
adb version以 root 權限運行 adbd
adb 的運行原理是 PC 端的 adb server 與手機端的守護進程 adbd 建立連接,然后 PC 端的 adb client 通過 adb server 轉發命令,adbd 接收命令后解析運行。
所以如果 adbd 以普通權限執行,有些需要 root 權限才能執行的命令無法直接用 adb xxx 執行。這時可以 adb shell 然后 su 后執行命令,也可以讓 adbd 以 root 權限執行,這個就能隨意執行高權限命令了。
命令:
adb root正常輸出:
restarting adbd as root現在再運行 adb shell,看看命令行提示符是不是變成 # 了?
有些手機 root 后也無法通過 adb root 命令讓 adbd 以 root 權限執行,比如三星的部分機型,會提示 adbd cannot run as root in production builds,此時可以先安裝 adbd Insecure,然后adb root試試。
相應地,如果要恢復 adbd 為非 root 權限的話,可以使用 adb unroot命令。
指定 adb server 的網絡端口
adb -P <port> start-server默認端口為 5037。
總結
以上是生活随笔為你收集整理的[2] ADB 基本用法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mailbox 编程_往死里写——从站m
- 下一篇: 【ES11(2020)】Promise