一、查看當前顯示的Activity
linux:
adb shell dumpsys activity | grep "mFocusedActivity"
windows:
adb shell dumpsys activity | findstr "mFocusedActivity"
二、查看手機分辨率
adb shell wm size
adb shell dumpsys window displays
(一)基礎操作
安裝app
adb install -r xxx.apk //覆蓋安裝,保留數據和緩存文件
adb install -s xxx.apk //安裝apk到sd卡
adb install -f xxx.apk //安裝apk到內部系統內存
adb install -d xxx.apk //安裝低版本Apk
adb install -g xxx.apk //準許Apk manifest中的所有權限
獲取安裝位置
adb shell pm get-install-location
卸載app
adb uninstall <package>
adb uninstall -k <package> //卸載app但保留數據和緩存文件
重啟手機
adb reboot
啟動adb服務
adb start-server
關閉服務
adb kill-server
進入shell環境
adb shell
(二)設備信息查看
查看所連接的設備以及設備所對應的序列號
adb devices
查看手機CPU架構(eg.ARMv7) 和內核個數
adb shell cat /proc/cpuinfo
查看系統的詳盡內存信息,包含內核情況
adb shell cat /proc/meminfo
獲取手機磁盤空間
adb shell df
獲取手機系統版本
adb shell getprop ro.build.version.release
獲取機器MAC地址:
adb shell cat /sys/class/net/wlan0/address
查看wifi密碼
adb shell cat /data/misc/wifi/*.conf
(三)pm / am相關
清除應用的數據
adb shell pm clear <package>
查看App路徑
adb shell pm path <package>
查看所有已安裝的應用的包名
adb shell pm list packages -f
查看含有“google”字段的應用的包名
adb shell pm list packages google
查看第三方應用的包名
adb shell pm list packages -3
啟動某個應用的某個Activity
adb shell am start -n packagename/packagename.activityname
如:adb shell am start -n com.company.appname/ .SplashActivity -es url http://www.baidu.com
//-es表示需傳遞參數,其中url表示參數名,鏈接表示具體參數值
撥打電話
adb shell am start -a android.intent.action.CALL -d tel:10086
打開網站
adb shell am start -a android.intent.action.VIEW -d http://www.baidu.com
(四)進程 / 服務查看
查看進程信息
adb shell ps | grep xxx
查看指定進程狀態
adb shell ps -x [pid]
周期性地打印出進程運行隊列、系統切換、CPU時間占比等情況
adb shell vmstat
各進程內存使用情況
adb shell procrank
殺死一個進程
adb shell kill [pid]
查看后臺services信息
adb shell service list
(五)dumpsys系列
查看當前手機所支持的dump服務
adb shell dumpsys -l
查看包信息 Package Information
adb shell dumpsys package
adb shell dumpsys package packages | grep <package> //查看某個app資源路徑
查看內存使用情況
adb shell dumpsys meminfo | grep xxx
adb shell dumpsys meminfo <pid> // 輸出指定pid的內存使用情況
adb shell dumpsys meminfo --package <package> // 輸出指定包名內存使用情況
adb shell top -m 6 //查看內存占用前6的app
查看棧頂Activity,可以用來獲取包名,查看其它app的包名
adb shell dumpsys activity top
查看渲染耗時
adb shell dumpsys gfxinfo <package> > /sdcard/fps.txt
取出文件:adb pull /sdcard/fps.txt /Users/admin/Downloads/1234.txt
查看am的狀態
adb shell dumpsys activity
Memory Use Over Time
adb shell dumpsys procstats
(六)文件操作
移動文件/文件夾
adb shell mv path/file newpath/file
新建文件夾
adb shell mkdir path
新建文件
adb shell touch filename
重命名文件/文件夾
adb shell rename path/filename newpath/newfilename
查看文件內容
adb shell cat file
從手機復制文件到電腦
adb pull /data/anr/traces.txt /Users/admin/Downloads/1234.txt
從電腦向手機發送文件
adb push foo.txt /sdcard/foo.txt
(七)log相關
查看日志
adb logcat | grep xxx
日志輸出到文件
adb logcat -d > ~/Desktop/logcat.txt //保存到桌面,需要android.permission.READ_LOGS
清除log緩存
adb logcat -c
(八)其他
連接到指定的ip,通常配合wifidebug
adb connect <device-ip-address>
跑monkey
adb shell monkey -v -p <package> 500 // 跑500次
截屏
adb shell /system/bin/screencap -p /sdcard/screenshot.png
adb pull /sdcard/screenshot.png ./Dowload/screenshot.png(保存到電腦)
屏幕錄制
adb shell screenrecord --time-limit 30 /sdcard/demo.mp4
adb pull /sdcard/demo.mp4 ./Downloads/