首页 > 代码库 > 获取手机内存\可用内存\单个APP运行内存
获取手机内存\可用内存\单个APP运行内存
1 /** 手机总内存 */ 2 private String getTotalMemory() { 3 // 系统内存信息文件 4 String str1 = "/proc/meminfo"; 5 String str2; 6 String[] arrayOfString; 7 long initial_memory = 0; 8 9 try {10 FileReader localFileReader = new FileReader(str1);11 BufferedReader localBufferedReader = new BufferedReader(12 localFileReader, 8192);13 // 读取meminfo第一行,系统总内存大小14 str2 = localBufferedReader.readLine();15 16 arrayOfString = str2.split("\\s+");17 for (String num : arrayOfString) {18 Log.i(str2, num + "\t");19 }20 // 获得系统总内存,单位是KB,乘以1024转换为Byte21 initial_memory = Integer.valueOf(arrayOfString[1]).intValue() * 1024;22 localBufferedReader.close();23 } catch (IOException e) {24 }25 // Byte转换为KB或者MB,内存大小规格化26 return Formatter.formatFileSize(getBaseContext(), initial_memory);27 }
1 /** 获取android当前可用内存大小 */ 2 private String getAvailMemory() {3 ActivityManager am = (ActivityManager) getSystemService(
Context.ACTIVITY_SERVICE);4 MemoryInfo mi = new MemoryInfo();5 am.getMemoryInfo(mi);6 // mi.availMem; 当前系统的可用内存7 // 将获取的内存大小规格化8 return Formatter.formatFileSize(getBaseContext(), mi.availMem);9 }
1 /** Android获取应用所占内存大小 */ 2 private void getRunningAppProcessInfo() { 3 ActivityManager mActivityManager = (ActivityManager) getSystemService( 4 Context.ACTIVITY_SERVICE); 5 6 // 获得系统里正在运行的所有进程 7 List<RunningAppProcessInfo> runningAppProcessesList = mActivityManager 8 .getRunningAppProcesses(); 9 10 for (RunningAppProcessInfo runningAppProcessInfo : runningAppProcessesList) {11 // 进程ID号12 int pid = runningAppProcessInfo.pid;13 // 用户ID14 int uid = runningAppProcessInfo.uid;15 // 进程名16 String processName = runningAppProcessInfo.processName;17 // 占用的内存18 int[] pids = new int[] { pid };19 Debug.MemoryInfo[] memoryInfo = mActivityManager20 .getProcessMemoryInfo(pids);21 int memorySize = memoryInfo[0].dalvikPrivateDirty;22 23 Log.i(TAG, "processName=" + processName + ",pid=" + pid + ",uid="24 + uid + ",memorySize=" + memorySize + "kb");25 }26 }
1 /** 2 * 获取单个 app 内存限制大小 3 * 返回以 M 为单位的数字, 4 * 可能在不同的平台或者设备上值都不太一样 5 */ 6 private void test01() { 7 ActivityManager activityManager2 = (ActivityManager) getSystemService( 8 Context.ACTIVITY_SERVICE); 9 activityManager2.getMemoryClass();10 }
获取手机内存\可用内存\单个APP运行内存
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。