adb常用命令

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"

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容