一个应用如果使用了largeHeap
,会请求系统为Dalvik虚拟机分配更大的内存空间。只需在在AndroidManifest.xml
加上:
<application
android:largeHeap="true"
....
>
在Android中,有如下函数可以帮助我们查看当前内存大小:
ActivityManager mActivityManager = (ActivityManager)getSystemService(Context.ACTIVITY_SERVICE);
int memoryClass = am. getMemoryClass();
int largeMemoryClass = am. getLargeMemoryClass();
getMemoryClass()
是系统为应用分配的内存,并没有额外的扩充。
而getLargeMemoryClass()
是开发者通过设置android:largeHeap="true"
获得应用可使用的最大内存。
当然你也可以在Android
系统的/system/build.prop
中查看,不过就没有什么意义了,如下:
dalvik.vm.heapstartsize=8m
dalvik.vm.heapgrowthlimit=192m
dalvik.vm.heapsize=512m
dalvik.vm.heaptargetutilization=0.75
dalvik.vm.heapminfree=2m
dalvik.vm.heapmaxfree=8m