app在运行过程中对内存有着动态需求,包括初始内存大小,最大可分配内存大小等,在系统内存优化的时候需要修改这些值针对特定的客户。
1.dalvik.vm.heapstartsize=8m(表示应用程序启动后为其分配的初始大小为8m)
这里分配的内存容量会影响到整个系统对RAM的使用程度,和第一次使用应用程序时的流畅程序
2.dalvik.vm.heapgrowthlimit=64m(每个应用程序最大内存可分配到64m)
超过就会崩溃oom错误
3.dalvik.vm.heapsize=256m(单个虚拟机可分配的最大内存256m)
这里分配的内存容量会影响到整个系统对RAM的使用程序,和程序在运行一段时间后的反应速度。这个值越大,系统消耗RAM则越快,但是程序会运行的非常稳 定
一般都是在build.prop中根据需要修改,我们下面展示直接在源码中修改的方法:
Index: frameworks/native/build/tablet-10in-xhdpi-2048-dalvik-heap.mk
===================================================================
--- frameworks/native/build/tablet-10in-xhdpi-2048-dalvik-heap.mk (revision 520)
+++ frameworks/native/build/tablet-10in-xhdpi-2048-dalvik-heap.mk (working copy)
@@ -18,7 +18,7 @@
PRODUCT_PROPERTY_OVERRIDES += \
dalvik.vm.heapstartsize=16m \
- dalvik.vm.heapgrowthlimit=192m \
+ dalvik.vm.heapgrowthlimit=256m \
dalvik.vm.heapsize=512m \
dalvik.vm.heaptargetutilization=0.75 \
dalvik.vm.heapminfree=512k \