Android开发学习笔记之 获得Android(安卓)可使用内存
16lz
2022-03-25
好多Android 开发者在开发过程中经常可以碰到 oom(内存溢出)问题,尤其是在 图片操作比较多的情况下,如果没有优化好,经常会碰到这个问题。这个时候都会想到 获得手机的总内存有多少 和 可使用内存有多少!下面给大家提供这两个方法分别获得 可用内存 和 Android总内存!话不多说 上代码!
// 获得可用的内存public class memInfo { public static long getmem_UNUSED(Context mContext) { long MEM_UNUSED;// 得到ActivityManager ActivityManager am = (ActivityManager) mContext.getSystemService(Context.ACTIVITY_SERVICE);// 创建ActivityManager.MemoryInfo对象 ActivityManager.MemoryInfo mi = new ActivityManager.MemoryInfo(); am.getMemoryInfo(mi);// 取得剩余的内存空间 MEM_UNUSED = mi.availMem / 1024; return MEM_UNUSED; } // 获得总内存 public static long getmem_TOLAL() { long mTotal; // /proc/meminfo读出的内核信息进行解释 String path = "/proc/meminfo"; String content = null; BufferedReader br = null; try { br = new BufferedReader(new FileReader(path), 8); String line; if ((line = br.readLine()) != null) { content = line; } } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } finally { if (br != null) { try { br.close(); } catch (IOException e) { e.printStackTrace(); } } } // beginIndex int begin = content.indexOf(':'); // endIndex int end = content.indexOf('k'); // 截取字符串信息content = content.substring(begin + 1, end).trim(); mTotal = Integer.parseInt(content); return mTotal; }}
更多相关文章
- Android(安卓)匿名共享内存C接口分析
- 【Android】安卓常见的内存泄漏:OOM,bitmap
- Android大图片内存清理
- android Lru图片缓存管理方案
- 不需要任何权限获得Android设备的唯一ID
- android内存分析工具- MAT的初识(1)
- android的一些常识
- Android避免context相关内存溢出
- Android(安卓)—— 静态AsyncTask解决内存泄漏