adb常用命令食用方法
- 2020 年 5 月 23 日
- 筆記
- 奇奇怪怪的知識又增加了
一、什麼是adb?
adb是Android Debug Bridge的縮寫,即Android調試橋;那什麼是Android調試橋?簡單來說,就是一個通用命令行工具,允許電腦與模擬器或連接的Android設備之間進行通訊,提供各種便利。
adb是一個客戶端-伺服器程式,包括三個組件:
客戶端:在電腦上運行。在終端通過命令行調用adb
後台程式:在模擬器或Android設備上作為後台進程運行,在設備上執行命令
伺服器:伺服器在電腦上作為後台進程運行,管理客戶端和後台程式之間的通訊
官方參考資料://developer.android.google.cn/studio/command-line/adb.html
二、adb工具下載
倉庫備份有windows 64位的adb工具,版本 Android Debug Bridge version 1.0.41
倉庫鏈接://gitee.com/shengtudai/adb.git 其它版本自行百度
三、運行adb
解壓工具包,在終端通過命令行調用adb工具,如解壓路徑為C:\adb
用cd命令進入目錄
cd C:/adb
在設備的開發者選項里打開usb調試開關,或進入Recovery,再連接電腦,輸入如下命令查找設備
adb devices
若輸出List of devices attached,則識別到設備
四、adb常用命令及功能
1.安裝軟體
adb install -r path_to_apk
註:-r 為強制替換原來軟體
2.卸載軟體
adb uninstall -k --user 0 com.tencent.mm // com.tencent.mm 就是微信的安裝包名
註:卸載軟體需要通過包名卸載;-k為卸載但保留數據,一般不加; --user
指定用戶 id
,Android 系統支援多個用戶,默認用戶只有一個,id=0。該命令可免root卸載系統預裝軟體
3.獲取應用包名
上面講到,卸載軟體需要通過包名卸載,如何獲取包名呢?
①.列出所有包名,找到最像的那個
adb shell
pm list packages
②.在設備上打開需要獲取包名的軟體,保持在前台運行,輸入如下命令
dumpsys window | grep mCurrentFocus
這裡 window{ }
中就是這個介面的包名類名,包名就是:com.tencent.mm
4.截圖和錄屏
adb shell screencap /sdcard/screen.png
adb shell 在設備運行腳本命令
screencap 截屏命令
/sdcard/screen.png 截圖保存路徑
adb shell screenrecord --size 1920x1080 --time-limit 100 /sdcard/demo.mp4 adb shell 在設備運行腳本命令 screenrecord 錄製影片命令 --size 1920x1080 widthxheight 設置影片大小 --time-limit 100 設置最大錄製時長(以秒為單位)。默認值和最大值均為 180(3 分鐘)。 按 Control + C 停止螢幕錄製
註:
screenrecord 選項說明
–help顯示命令語法和選項
–size widthxheight設置影片大小:1280×720。默認值是設備的原生顯示解析度(如果支援),如果不支援,則使用 1280×720。為實現最佳結果,請使用設備的 Advanced Video Coding (AVC) 編碼器支援的大小。
–bit-rate rate設置影片的影片比特率(以兆比特每秒為單位)。默認值為 4Mbps。您可以增加比特率以提升影片品質,但這麼做會導致影片文件變得更大。以下示例將錄製比特率設為 6Mbps:screenrecord –bit-rate 6000000 /sdcard/demo.mp4
–time-limit time設置最大錄製時長(以秒為單位)。默認值和最大值均為 180(3 分鐘)。
–rotate將輸出旋轉 90 度。此功能是實驗性的。
–verbose顯示命令行螢幕上的日誌資訊。如果您不設置此選項,則運行時此實用程式不會顯示任何資訊。
5.將文件複製到設備/從設備複製文件
要從模擬器或設備複製文件或目錄
adb pull remote local
要將文件文件或目錄(及其子目錄)複製到模擬器或設備
adb push local remote
注:local 和 remote 指的是開發電腦(本地)和模擬器/設備實例(遠程)上目標文件/目錄的路徑