APP_性能测试_Monkey03内存

区分几种内存
VSS- Virtual Set Size 虚拟耗用内存(包含共享库占用的内存)
RSS- Resident Set Size 实际使用物理内存(包含共享库占用的内存)
PSS- Proportional Set Size 实际使用的物理内存(比例分配共享库占用的内存)
SS- Unique Set Size 进程独自占用的物理内存(不包含共享库占用的内存)
一般来说内存占用大小有如下规律:VSS >= RSS >= PSS >= USS
 
监控-内存
一、通过Dumpsys 来取值
1、adb shell dumpsys meminfo
2、详细信息:adb shell dumpsys meminfo tv.danmaku.bili or Pid

二、用/system/xbin/procrank工具 来取值很直观

1、adb shell procrank

三、top

1、top -d 1 | grep packageName
adb shell "top -d 1 | grep packageName"

 关于单个应用内存占用量问题 

#查看单个应用程序最大内存限制
adb shell getprop|grep heapgrowthlimit
 #应用启动后分配的初始内存
adb shell getprop|grep dalvik.vm.heapstartsize
 #单个java虚拟机最大的内存限制
adb shell getprop|grep dalvik.vm.heapsize
 应用如果不想在 dalvik heap达到heapgrowthlimit限制的时候出现OOM,需要在
Manifest中的application标签中声明 android:largeHeap=“true”,声明后应用
dalvik heap 达到heapsize的时候才会出现OOM!
 注:设备的不一样 最大内存限制也可能不一样监控-CPU 
 
监控-CPU
一、通过Dumpsys 来取值
1、adb shell dumpsys cpuinfo

二、top

1、top -d 1 | grep packageName
 
通过ps命令查看
ps | grep packageName 
查看UID 
一、通过查看packages.list
adb shell "cat /data/system/packages.list | grep tv.danmaku.bili"

二、查看status文件

adb shell cat /proc//status
此处的需要替换成自己的pid的值
 
监控-流量_需要查看 pid或者uid
 
一、通过查看对应uid目录下的tcp_rcv和tcp_snd两个人文件
1、adb shell cat /proc/uid_stat/uid/tcp_snd

2、adb shell cat /proc/uid_stat/uid/tcp_rcv

3、命令中的要替换成自己的uid

二、通过proc/net/xt_qtaguid/stats
1、adb shell cat /proc/net/xt_qtaguid/stats | grep
2、命令中的要替换成自己的uid
三、通过PID下面的net/dev
1、adb shell cat /proc//net/dev
2、命令中的要替换成自己的uid
 

猜你喜欢

转载自www.cnblogs.com/njq666/p/10960029.html