Android activity's memory management

by Mihai Dumitrache » Mon, 01 Mar 2010 22:31:01 GMT

Sponsored Links
 Hello guys,
I have a problem with my application, and it's about a Virtual memory
ERROR/AndroidRuntime(19790): java.lang.OutOfMemoryError: bitmap size
exceeds VM budget

The story is like this:
I have an activity (let's call it A), the user click on a button from
this activity, then i will make an api call somewhere in the internet,
and after the result is back i start a subactivity (let's call it B).

In the activity B i have to dinamicaly load some images from the
resources folder. I load the images into bitmaps -> drawables ->
imageviews. After the user click's on some buttons i have to
setResult(..), finish(), and get back to activity A.

The thing is that, goes from activity A to B, then B -> A, then A -> B
for a few times, my app crashes with the message above: it doesn't
have enough memory to load the interface.

I can not maintain the activity B on the stack because i don't want
the user to go to this activity without going through activity A

Do you guys have any solution for this problem ?


Android activity's memory management

by Bob Kerns » Tue, 02 Mar 2010 02:01:26 GMT

 If I'm interpreting your pattern correctly, you're invoking activity A
from activity B, and activity B from activity A?

That would explain your problem, at least.

Instead of invoking A from B -- return to A by finishing B. Then
you'll only every have one A, and at most one B active at a time.

It you can't do this, and really need that stack of A's and B's,
you'll have to figure out a way to hold onto less memory -- for
example, when B passes images to A, have it forget all about them, so
when A is done with them and invokes the next B, they can be garbage


Sponsored Links

Other Threads

1. [WTB] Sony Erricson X10 Min Pro

Permisi suhu/suhi,

numpang tanya ada yg jual SonEr X10 Mini Pro baik yang new maupun 
second, kira2x brp'an ya harga-nya ? Japri aja ya om ^_^


Martinus Ady H.


2. i need the death of an activity to kill the whole application.

Having said that, the whole application(process included) does die,
however android reconstructs the activity stack and restarts the
application all the way till the activity before the one that crashed.
It's a nice feature, but i need it disabled till i'll sort out my data
loading from the Bundle on onCreate and onDestroy.
Any idea how i do that ?


3. NDK: result compiled and used on cygwin different from compiled and used on android

4. Android Market in trouble today

5. Closed WTS: Androids

6. Smart masih bisa kasih AKEY (?)

7. Isi Ulang Smart Gagal