My app has a lot static images (backgrounds, buttons, etc.) and a lot of small images, which loads from the web. These images are shown in a list view, for example.
I'm looking for a strategy to avoid out of memory errors. In the devices with less than 25 mb it runs out of memory very soon and crashes. What I have done: - Put the static images with the correct resolution in the correct folder (in this specific case it's hdpi). - Create a singleton class which caches the dynamically loaded images. Even if I disable the caching in the singleton class, I'm running out of memory. I logged the native usage with Debug.getNativeHeapAllocatedSize() and I know that bitmaps are the cause of the problem. I can't lose quality of the images. I would take in account slower loading speed, as long as the app doesn't crash! But calling System.gc() doesn't seem to be reliable, even less with native heap, and recycle manually the bitmaps at the end of each activity is a pain, because first, I have to initialize all the backgrounds in code, in order to get a reference to the bitmap, then I have to use some data structure, to hold all the bitmaps, and at the end of each activity call recycle on all, and then I have also to manage, that, in the next activity, I don't try to use the same bitmap instances, because I'll get exception "trying to use a recycled bitmap". So what do I have to do? Please help... -- You received this message because you are subscribed to the Google Groups "Android Developers" group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en