win10中使用adb查看app的几个指标

在win10中adb shell后面的命令加上" ",就不会报错无法执行了。

如:

使用 grep 来过滤:

adb shell pm list packages | grep qq

然后就报了'grep' 不是内部或外部命令,也不是可运行的程序或批处理文件 ,后来发现根本不是grep问题,

加上" "就可以执行了。adb shell "pm list packages | grep qq"

 


第一章:获取 package/activity 查看响应时间
adb shell  "logcat | grep ActivityManager"
暂时无效:adb shell logcat |grep start 获取启动的包名和activity
adb shell "am start -W -n package/activity" 抓取app的启动时间
adb shell "am force-stop package" 直接退出
adb shell "input keyevent 3" 退出到后台
例子:

热启动时间,指app在后台运行重新调用的时间:
adb shell "am start -W -n com.android.chrome/com.google.android.apps.chrome.Main"  需要package/activity
adb shell "input keyevent 3"

冷启动时间,指app在开启的重新调用的时间:

adb shell "am start -W -n com.android.chrome/com.google.android.apps.chrome.Main" 

adb shell "am force-stop com.android.chrome" 只带包名就行了

第二章CPU状态查看

 

Usage: top [ -m max_procs ] [ -n iterations ] [ -d delay ] [ -s sort_column ] [ -t ] [ -h ]
-m num Maximum number of processes to display. --最多显示多少个进程
-n num Updates to show before exiting.--刷新次数
-d num Seconds to wait between updates.--刷新时间间隔
-s col Column to sort by (cpu,vss,rss,thr).--按那列排列
-H Show threads instead of processes.--显示线程而不是进程
-h Display this help screen.--显示帮助文档


adb shell "top -m 10 -s cpu -n 1"
1) 在adb环境输入:top -m 10 -s cpu

# -m 10表示显示数量为10

# -s表示按指定行排序
adb shell "dumpsys cpuinfo | grep package"
例子:
adb shell "dumpsys cpuinfo | grep com.android.chrome"
参数含义:
PID : progress identification,应用程序ID
S : 进程的状态,其中S表示休眠,R表示正在运行,Z表示僵死状态,N表示该进程优先值是负数
#THR : 程序当前所用的线程数
VSS : Virtual Set Size虚拟耗用内存(包含共享库占用的内存)
RSS : Resident Set Size实际使用物理内存(包含共享库占用的内存)
PCY : 前台(fg)和后台(bg)进程
UID : User Identification,用户身份ID
Name : 应用程序名称

第三章流量
adb shell "ps |grep packagename " 获取进程PID
cat /proc/pid/net/dev
例子:
adb shell "ps |grep com.android.chrome"
adb shell "cat /proc/1115/net/dev"

比如像华为的电池管理有相关应用统计流量、电量、占用内存

第四章电量
1.2 改变手机电池状态

手机连接到电脑,默认为充电状态

切换手机电池为非充电状态: adb shell dumpsys battery set status 1

1.3. 改变手机电量

让手机电量显示百分百: adb shell dumpsys battery set level 100
让手机电量显示1: adb shell dumpsys battery set level 1

获取整个设备的电量消耗信息: adb shell dumpsys batterystats | more
获取某个apk的电量消耗信息: adb shell "dumpsys batterystats com.android.chrome | more"

AC powered: false
2 USB powered: true
3 Wireless powered: false
4 status: 1 #电池状态:2:充电状态 ,其他数字为非充电状态
5 health: 2 #电池健康状态:只有数字2表示good
6 present: true #电池是否安装在机身
7 level: 55 #电量: 百分比
8 scale: 100
9 voltage: 3977 #电池电压
10 current now: -335232 #电流值,负数表示正在充电
11 temperature: 335 #电池温度,单位是0.1摄氏度
12 technology: Li-poly #电池种类=

第五章内存
adb shell top -d 1 > meminfo
adb shell "dumpsys meminfo package_name"
参数含义:
dalvik : dalvik使用的内存
native : native堆上的内存,指C\C++堆的内存(android 3.0以后bitmap就是放在这儿)
other : 除了dalvik和native的内存,包含C\C++非堆内存······
Pss : 该内存指将共享内存按比例分配到使用了共享内存的进程
allocated : 已使用的内存
free : 空闲的内存
private dirty : 非共享,又不能被换页出去的内存(比如linux系统中为了提高分配内存速度而缓冲的小对象,即使你的进程已经退出,该内存也不会被释放)
share dirty : 共享,但有不能被换页出去的内存
第六章FPS
打开GPU
adb shell dumpsys gfxinfo package_name > fps.txt

posted @ 2018-05-25 10:04  重铸根基  阅读(423)  评论(0编辑  收藏  举报