要获取手机的可用内存,首先要获取系统服务信息,
ActivityManager myActivityManager =(ActivityManager)getSystemService(Activity.ACTIVITY_SERVICE);
然后获得MemoryInfo类型对象
ActivityManager.MemoryInfo memoryInfo = new ActivityManager.MemoryInfo();
然后,使用getMemoryInfo(memoryInfo)方法获得系统可用内存,此方法将内存大小保存在memoryInfo对象上
myActivityManager.getMemoryInfo(memoryInfo) ;
然后,memoryInfo对象上的availmem值即为所求
long memSize = memoryInfo.availMem ;
字符类型转换 ,转换成MB格式。
String leftMemSize = Formatter.formatFileSize(getBaseContext(), memSize);
public static String formatFileSize (Context context, long number)
Added in
API level 3
第一个参数是上下文,第二个是需要转换格式的long类型的文件大小。最终返回类似 22KB、52Bytes,22MB的字符串。