常用adb 命令
1.查看基本信息和基本操作
查看當(dāng)前應(yīng)用程序進程
adb shell ps | grep "key"
退出程序進程
adb shell kill package
退出并清除當(dāng)前應(yīng)用程序數(shù)據(jù)
adb shell pm clear package name
// 強殺進程
am force-stop <PACKAGE>
// 啟動activity
adb shell am start -n yourpackagename/.activityname
Ip地址
adb shell ifconfig | grep Mask
顯示屏參數(shù)
adb shell dumpsys window displays
rom信息
adb shell getprop ro.product.cpu.abi
// 截圖
adb shell screencap -p /sdcard/screencap.png && adb pull /sdcard/screencap.png ~/Desktop
// 錄制視頻
adb shell screenrecord --verbose
control + c 停止
// 當(dāng)前安裝的app
adb shell pm list packages [-3 ]
-s 只輸出系統(tǒng)包
-3 只輸出三方包
-e "ximalaya" -e 設(shè)置過濾條件
// 查看應(yīng)用版本
adb shell dumpsys package packagename | grep version
2.性能方面
app 當(dāng)前內(nèi)存占用情況
// 占內(nèi)存前2 的app
adb shell top -m 2
dump 當(dāng)前系統(tǒng)內(nèi)存
adb shell am dumpheap 27306 /data/local/tmp/android.hprof && adb pull /data/local/tmp/android.hprof ~/Downloads/
查看當(dāng)前應(yīng)用內(nèi)存情況
adb shell dumpsys meminfo [pid | packageName]
看退出App后Objects的Views和Activities數(shù)目為否為0,也可以看單獨一個activity 頁面
當(dāng)前task
adb shell dumpsys activity activities 包名
- 1). hprof 文件分析
a. 導(dǎo)入Android Studio 中,使用profile 分析器進行分析
b. 使用MAT 工具進行分析
MAT 工具下載地址
MAT 工具使用介紹
配置mat 環(huán)境嘉抒,因為從 android profile直接獲取到的hprof文件格式與mat的格式不兼容姿鸿,所以需要使用工具轉(zhuǎn)換一下
- 2). top 命令返回參數(shù)含義
第 1 行:進程信息
總共(total):754個
運行中(running)狀態(tài):1個
休眠(sleeping)狀態(tài):753個
停止(stopped)狀態(tài):0個
僵尸(zombie)狀態(tài):0個
第 2 行:內(nèi)存信息
5.5G total:物理內(nèi)存總量
5.4G used:使用中的內(nèi)存量
165M free:空閑內(nèi)存量
76M buffers: 緩存的內(nèi)存量
第 3 行:Swap分區(qū)信息
2.5G total:交換區(qū)總量
789M used:使用的交換區(qū)大小
1.7G free:空閑交換區(qū)大小
2.4G cached:緩沖的交換區(qū)大小
內(nèi)存監(jiān)控時殖卑,可以監(jiān)控swap交換分區(qū)的used,如果這個數(shù)值在不斷的變化坊萝,說明內(nèi)核在不斷進行內(nèi)存和swap的數(shù)據(jù)交換孵稽,這是內(nèi)存不夠用了。
第 4 行:CPU信息
800%cpu:8核cpu
100%user:用戶進程使用CPU占比
3%nice:優(yōu)先值為負的進程占比
54%sys:內(nèi)核進程使用CPU占比
641%idle:除IO等待時間以外的其它等待時間占比
0%iow:IO等待時間占比
3%irq:硬中斷時間占比
0%sirq:軟中斷時間占比
第 5 行及以下:各進程的狀態(tài)監(jiān)控
PID:進程id
USER:進程所屬用戶
PR:進程優(yōu)先級
NI:nice值十偶,負值表示高優(yōu)先級菩鲜,正值表示低優(yōu)先級
VIRT:進程使用的虛擬內(nèi)存總量,VIRT=SWAP+RES
RES:進程使用的惦积、未被換出的物理內(nèi)存大小接校,RES=CODE+DATA
SHR:共享內(nèi)存大小
S:進程狀態(tài)
%CPU:上次更新到現(xiàn)在的CPU占用時間比
%MEM:使用物理內(nèi)存占比
TIME+:進程時間的CPU時間總計,單位1/100秒
ARGS:進程名