I know there's a VMRuntime.getRuntime().setMinimumHeapSize in Android 2.1/2.2 for developer to adjust the starting heap size of the application, and it is one of the most effective solution sfor solving the OutOfMemory error during BitmapFactory.decodeStream()
However, since Android 2.3, this VMRuntime class is removed from official API, does anyone knows the alternative API of this function in 2.3?
and it is one of the most effective solution sfor solving the OutOfMemory error during BitmapFactory.decodeStream()
Really? Setting the minimum heap size may reduce GC churn, but I would love to see links to places where it helped with OutOfMemoryErrors
.
However, since Android 2.3, this VMRuntime class is removed from official API, does anyone knows the alternative API of this function in 2.3?
There is none. That behavior is no longer exposed.
you can't increase the heap size dynamically.
you can request to use more by using android:largeHeap="true" in the manifest.
also, you can use native memory, so you actually bypass the heap size limitation.
here are some posts i've made about it:
How to cache bitmaps into native memory
JNI bitmap operations , for helping to avoid OOM when using large images
and here's a library i've made for it:
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With