adb的全稱為Android Debug Bridge
C:\Users\lenovo>chcp 65001
切換至UTF-8
C:\Users\lenovo>adb devices
List of devices attached
127.0.0.1:62001 device
adb devices:查看設(shè)備
adb tcpip 端口號:設(shè)置端口號
adb connect ip地址:端口號:連接至指定設(shè)備
C:\Users\lenovo>adb -e shell
root@shamu:/ #exit
shell:連接并打開對應(yīng)設(shè)備的shell
-e:連接至模擬器
-d:連接至真機(jī)
-s 設(shè)備地址:端口:連接至指定設(shè)備
exit:退出shell
C:\Users\lenovo>adb shell
root@shamu:/ # ll / > /storage/emulated/legacy/Download/1.txt
將數(shù)據(jù)存放至模擬器的文件中,只能放至在模擬器中
C:\Users\lenovo>adb shell ls -l / > D:/1.txt
不進(jìn)入shell把內(nèi)容輸出,只能輸出至本地
1> 文件路徑輸出正常信息數(shù)據(jù),1可以省略
2> 文件路徑輸出錯誤信息數(shù)據(jù)
1> 文件路徑 2>&1將錯誤信息合并至正常信息中
C:\Users\lenovo>adb logcat
logcat:查看日志,默認(rèn)實(shí)時更新
--help:查看命令幫助
-c:清空應(yīng)用軟件日志
-d:輸出應(yīng)用軟件日志并退出
-v 格式:按xx格式顯示日志
adb logcat -d -v time *:V > 本地文件
通常將日志導(dǎo)出到本地,用于查詢崩潰信息
標(biāo)簽等級:
D調(diào)試 I信息 W告警 E錯誤 F致命錯誤 S安靜
crash當(dāng)app閃退崩潰時,就有crash日志
ANR安卓無響應(yīng)
display查看界面的顯示和用時
F等級基本都是致命錯誤
C:\Users\lenovo>adb install C:\Users\lenovo\Desktop\ECMobile3.2.apk
[100%] /data/local/tmp/ECMobile3.2.apk
pkg: /data/local/tmp/ECMobile3.2.apk
Success
adb install xxx.apx:安裝軟件
adb uninstall 包名:卸載軟件
C:\Users\lenovo>adb pull /storage/emulated/legacy/Download/1.txt C:\abc\temp.log
[100%] /storage/emulated/legacy/Download/1.txt
adb pull 手機(jī)路徑文件 PC端路徑\文件名,文件夾不加\會判定成文件 —— 將手機(jī)端的文件復(fù)制到PC本地
C:\Users\lenovo>adb push C:\abc\a.log /storage/emulated/legacy/Download/233.log
[100%] /storage/emulated/legacy/Download/233.log
adb push PC文件名 手機(jī)端路徑 —— 復(fù)制本地文件至手機(jī)端
adb remount:獲取對系統(tǒng)級文件修改的權(quán)限
root@shamu:/ # screencap -p /storage/emulated/legacy/Download/123.png
screencap -p 手機(jī)路徑:截屏并存放之固定路徑
包管理器pm
root@shamu:/ # pm list packages | grep seafile
package:com.seafile.seadroid2
adb shell pm path 包名:看app的安裝路徑
pm list packages:查看設(shè)備上安裝的所有包,部分版本不支持需要使用下一個
cmd package in packages:查看設(shè)備上安裝的所有包,部分版本不支持需要使用上一個
pm dump 包名:包的信息
C:\Users\lenovo>adb shell pm uninstall com.seafile.seadroid2
Success
pm uninstall 包名:卸載軟件
活動管理器am
adb shell am start activity名:啟動一個界面,但要注意大多數(shù)app的界面都需要接收數(shù)據(jù)才能打開,所以一般只能打開首頁
adb shell am startservice 服務(wù)名:啟動一個服務(wù)
adb shell am stopservice 服務(wù)名:停止一個服務(wù)
adb shell am force-stop 包名:強(qiáng)制關(guān)閉一個程序的界面
adb shell am kill 包名:清除該包內(nèi)存,也達(dá)到關(guān)閉程序作用
輸入操作input
adb shell input tap x坐標(biāo) y坐標(biāo):在屏幕上點(diǎn)擊一個坐標(biāo)
adb shell input text 文字:做文字輸入,輸入到哪個文本框,需要先執(zhí)行點(diǎn)擊
adb shell input keyevent 按鍵編號:不同按鍵編號對應(yīng)不同操作功能
adb shell input swipe x1 y1 x2 y2:滑動,從坐標(biāo)1到坐標(biāo)2
隨機(jī)操作命令monkey
C:\Users\lenovo>adb shell monkey --h
** Error: Unknown option: --h
usage: monkey [-p ALLOWED_PACKAGE [-p ALLOWED_PACKAGE] ...]
[-c MAIN_CATEGORY [-c MAIN_CATEGORY] ...]
[--ignore-crashes] [--ignore-timeouts]
[--ignore-security-exceptions]
[--monitor-native-crashes] [--ignore-native-crashes]
[--kill-process-after-error] [--hprof]
[--pct-touch PERCENT] [--pct-motion PERCENT]
[--pct-trackball PERCENT] [--pct-syskeys PERCENT]
[--pct-nav PERCENT] [--pct-majornav PERCENT]
[--pct-appswitch PERCENT] [--pct-flip PERCENT]
[--pct-anyevent PERCENT] [--pct-pinchzoom PERCENT]
[--pkg-blacklist-file PACKAGE_BLACKLIST_FILE]
[--pkg-whitelist-file PACKAGE_WHITELIST_FILE]
[--wait-dbg] [--dbg-no-events]
[--setup scriptfile] [-f scriptfile [-f scriptfile] ...]
[--port port]
[-s SEED] [-v [-v] ...]
[--throttle MILLISEC] [--randomize-throttle]
[--profile-wait MILLISEC]
[--device-sleep-time MILLISEC]
[--randomize-script]
[--script-log]
[--bugreport]
[--periodic-bugreport]
COUNT
-p 包1 -p 包2 .....:指定打開的包
-v -v -v:日志詳細(xì)程度,一個v最簡約,3個V最詳細(xì), -vvv
--throttle 毫秒數(shù):表示2個操作之間的間隔時間
-s 數(shù)字:表示種子數(shù),即當(dāng)出現(xiàn)錯誤時,錯誤重復(fù)執(zhí)行幾次
--ignore-xxx:各種忽略異常
--pct-xxx:各種操作百分比
--throttle 毫秒數(shù):表示2個操作之間的間隔時間
adb shell monkey 各選項 次數(shù) 1> 執(zhí)行文件 2> 錯誤文件
日志
adb shell dmesg:內(nèi)核日志
adb bugreport:安卓app代碼調(diào)試和分析
adb shell dumpsys 服務(wù)名:查看系統(tǒng)服務(wù)信息,偏硬件
adb logcat [選項]:應(yīng)用日志
aapt
android asset packaging tool,安卓打包工具
aapt list -v apk文件:列出apk文件中的所有包內(nèi)文件,用于安裝測試中的安裝前的包文件檢查
aapt dump WHAT apk文件:badging顯示包中的基本信息 permissions顯示權(quán)限信息
aapt package [選項] 打包文件 包名:打包
aapt add [選項] 打包文件 包名:往包中添加文件
aapt remove [選項] 包中文件 包名:包中移除文件
aapt version:查看版本號
查看app啟動時間
關(guān)閉app
命令行清空舊日志
C:\Users\lenovo>adb logcat -c
adb logcat -c
打開app
獲取啟動時間
C:\Users\lenovo>adb logcat -d | findstr "Displayed"
07-08 11:52:11.569 2100 2120 I ActivityManager: Displayed com.seafile.seadroid2/.ui.activity.UnlockGesturePasswordActivity: +506ms (total +621ms)
adb logcat -d | findstr "Displayed"