android 除錯橋 (android debug bridge, adb) 是一種功能多樣的命令列工具,可讓您與裝置進行通訊。adb 命令可用於執行各種裝置操作(例如安裝和除錯應用),並提供對 unix shell(可用來在裝置上執行各種命令)的訪問許可權。它是一種客戶端-伺服器程式,包括以下三個元件:
(1) 客戶端:用於傳送命令。客戶端在開發計算機上執行。您可以通過發出 adb 命令從命令列終端呼叫客戶端。
(2) 守護程式 (adbd):用於在裝置上執行命令。守護程式在每個裝置上作為後台程序執行。
(3) 伺服器:用於管理客戶端與守護程式之間的通訊。伺服器在開發機器上作為後台程序執行。
詳細的工作原理參見谷歌官方指南:
1adb devices
//查詢已連線裝置/模擬器
2adb start-server
//啟動adb server(一般無需手動執行此命令,在執行 adb 命令時若發現 adb server 沒有啟動會自動調起)
3adb kill-server
// 停止adb server
4adb verion
//檢視adb版本
5adb root
//以 root 許可權執行 adbd。adb 的執行原理是 pc 端的 adb server 與手機端的守護程序 adbd 建立連線,然後 pc 端的 adb client 通過 adb server **命令,adbd 接收命令後解析執行。
6adb unroot
//以 普通許可權執行 adbd
7adb remount
//已讀寫方式掛載系分割槽/system
8adb devices
//查詢已經鏈結的裝置,其輸出結果有以下三種:
(1) offline:表示裝置未連線成功或無響應。
(2) device:裝置已連線。注意這個狀態並不能標識 android 系統已經完全啟動和可操作,在裝置啟動過程中裝置例項就可連線到 adb,但啟動完畢後系統才處於可操作狀態。
(3) no device:沒有裝置/模擬器連線。
9adb get-serialno
// 列印裝置序列號(和adb devices中的序列號一致)
10adb get-state
//檢視裝置狀態,其輸出結果有以下三種:
(1) device:裝置正常連線
(2) offline:連線出現異常,裝置無響應
(3) unknown:沒有連線裝置
11adb status-window
//連續輸出裝置狀態
12adb bugreport
//返回裝置bug report相關的所有資訊
13adb [-d|-e|-s ]
(1)adb -e shell
//進入到模擬器中
(2)adb -d shell
//進入到真機中
(3)adb -s 《裝置id> shell
//進入到指定裝置中
14adb shell svc wifi enable
//開啟裝置wifi
15adb shell svc wifi disable
//關閉裝置wifi
16adb reboot
//重啟裝置
17adb reboot bootloader
//裝置重啟到fastboot模式
18adb reboot recovery
//裝置重啟到recovery模式
19adb push 《電腦上的檔案路徑》 《裝置裡的目錄》
//表示電腦本地檔案push到裝置中
20adb pull 《裝置裡的目錄》 《電腦上的檔案路徑》
//表示裝置檔案pull到電腦本地上
21adb install apk的路徑
//安裝應用apk
22adb uninstall 包名
//解除安裝應用apk
23adb logcat
//抓取裝置log
24adb logcat > 本地電腦目錄/.log.txt
//儲存日誌到本地電腦目錄下的log.txt檔案中
25adb logcat -c
//清除log快取
27關於adb shell
通過adb shell 命令,就可以進入裝置或者模擬器的shell環境了,在這個linux shell中,我們就可以執行各種linux命令了。如果只想執行一條shell命令,就可以採用:adb shell [shell_command]
,在實際使用中,經常與grep或findstr一起使用,起到過濾作用,檢視自己需要的關鍵資訊。
常見命令有:
(1)adb shell ls 目錄
// 查詢目錄下檔案
(2)adb shell ls –al 目錄
//查詢目錄下檔案詳細資訊
(3)adb shell cd 目錄
//切換到目錄下
(4)adb shell rm 目錄路徑/檔名
//刪除檔案目錄下的檔案
(5)adb shell mkdir 目錄名
//建立目錄
(6)adb shell touch 檔名
//建立檔案
(7)adb shell pwd
//檢視當前所處的位置
(8)adb shell ps
//檢視裝置程序
(9)adb shell ifconfig
//查詢裝置閘道器資訊
(10)adb shell ifconfig | grep 「mask」
//檢視裝置ip 位址
(11)adb shell dumpsys battery
//檢視裝置電池資訊
(12)adb shell dumpsys window displays
//檢視裝置螢幕引數
(13)adb shell getprop ro.build.version.release
//檢視裝置安卓系統版本
(14)adb shell cat /proc/cpuinfo
//檢視裝置cpu資訊
(15)adb shell cat /proc/meminfo
//檢視裝置記憶體資訊
(16)adb shell wm size
//檢視裝置螢幕解析度
(17)adb shell wm density
//檢視裝置螢幕密度
(18)adb shell screenrecord /sdcard/demo.mp4
//螢幕開始錄影並且儲存到/sdcard中並命名為demo.mp4
(19)adb shell screencap /sdcard/screen.png
//可以使用screencap命令來進行裝置螢幕截圖
注:一般windows連線裝置,使用cygwin軟體進行命令列控制。
cygwin是乙個在windows平台上執行的unix模擬環境,是cygnus solutions公司開發的自由軟體。cygwin就是乙個windows軟體,該軟體就是在windows上**linux作業系統。
簡言之,cygwin是乙個在windows平台上執行的 linux模擬環境,使用乙個dll(動態鏈結庫)來實現。這樣,我們可以開發出cygwin下的unix工具,使用這個dll執行在windows下。
關於cygwin軟體安裝可參見部落格:
[1]
[2]
Android ADB常用命令
1.adb shell linux命令列控制台 cd system bin 檢視linux下的所有命令 ls ping localhost 檢查網路連線 2.adb kill server 結束adb服務 3.adb start server 啟動adb服務 4.adb devices 列出與adb...
Android ADB常用命令
1.adb shell linux命令列控制台 cd system bin 檢視linux下的所有命令 ls ping localhost 檢查網路連線 2.adb kill server 結束adb服務 3.adb start server 啟動adb服務 4.adb devices 列出與adb...
android adb常用命令
apk包安裝步驟 1,首先將.android sdk platform tools新增都path路徑下 2,在控制台視窗中進入到你apk包所在的目錄中 3,輸入 abd unremount,第一次使用該命令的時候需要獲取該命令的操作許可權 4,開啟android的模擬器 5,在控制台中執行 adb ...