先贴下代码
- Java code
ActivityManager am = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE); MemoryInfo info = new MemoryInfo(); am.getMemoryInfo(info); return Formatter.formatFileSize(context, info.availMem);// 将获取的内存大小规格化
这个是获得系统可用内存大小的代码,我输出的信息为什么跟setting里storage里的available space的大小不一致呢,而且还差别老大了。
------解决方案--------------------
这就是一群对计算机没概念的人喊出来的,也不排除商家故弄玄虚乱喊忽悠消费者的。
storage和内存没啥关系。
这里问同学,应该都知道RAM和ROM的区别吧,但现在通常都是用flash代替ROM了。
直接说就是:
am.getMemoryInfo, 返回的是系统的内存信息,这是确切的内存,基本上android的程序都要加载到内存中才能运行。
setting里storage里的available space 指的是系统空余flash盘的大小, 就像获取你硬盘的大小一样。
如果是PC,就是内存和硬盘的区别了,你说怎么会一致?