Out of Memory Issue

  1. pinkfloydim

    pinkfloydim Member

    I am calling 'setBackgroundResource' on some png files, which are in the res/drawable-mdpi folder, but not in the other folders.

    But after a few back and forward loads the phone runs out of memory.
    Any way to clear the memory so I can load the new graphics.

    [HIGH]String map_up_theme_res = CoreFunctions.mapThemeRes("up");
    String map_down_theme_res = CoreFunctions.mapThemeRes("down");
    String service_up_theme_res = CoreFunctions.serviceThemeRes("up");
    String service_down_theme_res = CoreFunctions.serviceThemeRes("down");
    try {
    map_up_theme_res, R.drawable.class));
    map_down_theme_res, R.drawable.class));
    service_up_theme_res, R.drawable.class));
    service_down_theme_res, R.drawable.class));
    } catch (OutOfMemoryError E) {


  2. pinkfloydim

    pinkfloydim Member

    So how do I use this in respect to my code, as just passing in a resource id. How do I get the Bitmap resource in order to recycle it.
  3. jungajuice

    jungajuice Active Member

    You really shouldn't, the system should take care of it. You should really only recycle bitmaps when you're iterating through a lot of them.

    Chances are you're leaking memory somewhere else that's adding up, and this is just where's its crashing. Make sure you're not holding onto static references of resource intensive objects like Activities.
  4. pinkfloydim

    pinkfloydim Member

    Every Time I open an activity I am using this code:

    [HIGH]final Intent intent = new Intent(cnt, myClass);
    cnt.startActivity(intent);[/HIGH]I am assuming that this clears the activity stack, which should free up memory?
  5. CaptainConnect

    CaptainConnect New Member

    You might also consider to optimize your images in order to make them take as little memory as possible when loaded by the app. Image dimensions matter, transparency matters. I blogged about this subject in this blog post

Share This Page