.一、利用Android API函数查看
1.1 ActivityManager查看可用内存。
ActivityManager.MemoryInfo outInfo = new ActivityManager.MemoryInfo();
am.getMemoryInfo(outInfo);
outInfo.availMem即为可用空闲内存。
1.2、android.os.Debug查询PSS,VSS,USS等单个进程使用内存信息
MemoryInfo[] memoryInfoArray = am.getProcessMemoryInfo(pids);
MemoryInfo pidMemoryInfo=memoryInfoArray[0];
pidMemoryInfo.getTotalPrivateDirty();
getTotalPrivateDirty()
Return total private dirty memory usage in kB. USS
getTotalPss()
Return total PSS memory usage in kB.
PSS
getTotalSharedDirty()
Return total shared dirty memory usage in kB. RSS
二、直接对Android文件进行解析查询,
/proc/cpuinfo系统CPU的类型等多种信息。
/proc/meminfo 系统内存使用信息
如
/proc/meminfo
MemTotal: 16344972 kB
MemFree: 13634064 kB
Buffers: 3656 kB
Cached: 1195708 kB
我们查看机器内存时,会发现MemFree的值很小。这主要是因为,在linux中有这么一种思想,内存不用白不用,因此它尽可能的cache和buffer一些数据,以方便下次使用。但实际上这些内存也是可以立刻拿来使用的。
所以 空闲内存=free+buffers+cached=total-used
通过读取文件/proc/meminfo的信息获取Memory的总量。
ActivityManager. getMemoryInfo(ActivityManager.MemoryInfo)获取当前的可用Memory量。
三、通过Android系统提供的Runtime类,执行adb 命令(top,procrank,ps...等命令)查询
通过对执行结果的标准控制台输出进行解析。这样大大的扩展了Android查询功能.例如:
final Process m_process = Runtime.getRuntime().exec("/system/bin/top -n 1");
final StringBuilder sbread = new StringBuilder();
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(m_process.getInputStream()), 8192);
# procrank
Runtime.getRuntime().exec("/system/xbin/procrank");
内存耗用:VSS/RSS/PSS/USS
Terms
• VSS - Virtual Set Size 虚拟耗用内存(包含共享库占用的内存)
• RSS - Resident Set Size 实际使用物理内存(包含共享库占用的内存)
• PSS - Proportional Set Size 实际使用的物理内存(比例分配共享库占用的内存)
• USS - Unique Set Size 进程独自占用的物理内存(不包含共享库占用的内存)
一般来说内存占用大小有如下规律:VSS >= RSS >= PSS >= USS
USS is the total private memory for a process, i.e. that memory that is completely unique to that process.USS is an extremely useful number because it indicates the true incremental cost of running a particular process. When a process is killed, the USS is the total memory that is actually returned to the system. USS is the best number to watch when initially suspicious of memory leaks in a process.
相关推荐
Due to undocumented changes made by Google, on Android 7.0 CPU usage information for processes others than the own AnotherMonitor one will not be available (not even with root access). Rest of the app...
Unity调用Android查看内存信息,在android上面运行时候可查看fps,系统内存大小,系统可用内存大小,当前App占用内存
可以获取系统的内存和可用内存,cpu的实时使用率
Android端内存、cpu、电量测试
鉴于某个垃圾博主只搬运两个小功能,竟然收30分,实在忍无可忍这种垃圾。app需要系统签名才可以获取信息,普通权限app只能部分信息。
详细列出android手机硬件内存大小和CPU核心等内容
本文实例讲述了Android编程实现获取系统内存、CPU使用率及状态栏高度的方法。分享给大家供大家参考,具体如下: DeviceInfoManage类用于获取系统的内存,CPU的信息,以及状态栏的高度 import java.io.BufferedReader...
1.面向window和linux和android三个平台。 2.线程可监控物理内存,虚拟内存,CPU和GPU等占用情况。 3.输出结果保存为exls或者csv可进行图形化分析。
Android检查内存使用以及cpu使用和测试cpu温度(本人亲测)友友们我会更新更多的源码和大家分享,希望大家喜欢
功能:获取android设备中某一个app的cpu和内存 环境:python和adb 使用方法:使用adb连接android设备,打开将要测试的app,执行cpu/内存代码 cpu获取代码如下:(输入参数为脚本执行时间) # coding:utf-8 ''' 获取...
可获取IP地址,mac地址,实时cpu占用显示等
经测试在MTK平台1G内存4核CPU占用比在50%左右,偶尔可能会达到70%以上。 超过3D游戏及其它任何应用。 当应用占用CPU比超过一定系统的值后,会产生大量ANR(应用 无响应)请选择等待。 如: User 63%, System 31%, ...
android安卓app开发之如何查看cpu使用率和内存泄漏.zip
android开发内存,cpu等信息读取
Linux 提供了非常简单的一个命令 top,可以查看应用的 CPU 和内存占用情况,Android shell 下也可以直接使用它,输入如下命令就能够在窗口中循环输出 CPU 占用靠前的应用进程 $ adb shell top 400%cpu 67%user 7%...
Android中获取系统内存信息以及进程信息-----ActivityManager的使用(一)
winform实现 实时显示CPU/内存的使用率,内存部分不知如何写。
android系统信息(内存、cpu、sd卡、电量、版本)获取.txt android的总内存大小信息存放在系统的/proc/meminfo文件里面,可以通过读取这个文件来获取这些信息:
本文实例讲述了Android获取设备CPU核数、时钟频率以及内存大小的方法。分享给大家供大家参考,具体如下: 因项目需要,分析了一下 Facebook 的开源项目 – Device Year Class。 Device Year Class 的主要功能是根据 ...
iTest--记录android app消耗的cpu/内存/流量 /电量,不可用你打我 。一个积分是个意思,好用多多评论。