Android获取系统的内存使用率
16lz
2021-01-23
1,获取系统当前的可用内存
private static long getAvailableMemory(Context context) {ActivityManager.MemoryInfo mi = new ActivityManager.MemoryInfo();getActivityManager(context).getMemoryInfo(mi);return mi.availMem;}
2,计算内存使用率
public static String getUsedPercentValue(Context context) {String dir = "/proc/meminfo";try {FileReader fr = new FileReader(dir);BufferedReader br = new BufferedReader(fr, 2048);String memoryLine = br.readLine();String subMemoryLine = memoryLine.substring(memoryLine.indexOf("MemTotal:"));br.close();long totalMemorySize = Integer.parseInt(subMemoryLine.replaceAll("\\D+", ""));long availableSize = getAvailableMemory(context) / 1024;int percent = (int) ((totalMemorySize - availableSize) / (float) totalMemorySize * 100);return percent + "%";} catch (IOException e) {e.printStackTrace();}return "none";}
更多相关文章
- android 缩放图片与内存溢出
- Android调用C++实现共享内存(Native层)
- Android Dalvik 内存管理学习
- Android OOM内存溢出解决方案之一
- Android高效加载大图、多图解决方案,有效避免程序内存溢出现象