9

I have a Motorola Milestone, and I've come to learn that it has a relatively low memory (runtime memory, not storage capacity). The problem that comes with this is that whenever too many apps want to run in the background, the android system starts killing stuff, and with my Milestone that happens very easily.

That wouldn't be so bad, if it weren't for the fact that android seems to think the home launcher is the least important app of all (which is absurdly wrong). For instance, right now I have a series of apps poluting the background, some important (like Swype) and some pointless (like Facebook). If I open up even a simple app like Messages or Contacts or Settings the homelauncher gets killed in the background. Once I press the Home button, I am greeted with an empty home screen, and have to wait around 1 or 2 minutes for everything to load again.

This happens with all home launchers I tried, though it happens more easily with the heavier ones. So far, I managed to live with this behavior by religiously avoiding apps that run in the background (as well as widgets). But this solution is not perfect. It still happens more often than I'd like.

Is there a way to change android's priorities when it comes to killing background apps? But why does the home launcher rank lower than Google Maps' location service and Facebook's (inactive) uploader and everything else? I want the home launcher to be last thing that gets killed when memory is low, or as close to last as possible (e.g. it obviously can't rank higher than the currently active app, but you get my point).

I currently have Cyanogen mod 6 installed, but it also happened on the stock android OS, and I am willing to install absolutely ANY custom ROM to solve this issue.

0

3 Answers 3

5

I think ADW Launcher has a setting that should keep the application in memory. Also, CM has a setting to force the OS to keep the launcher in memory. I dont remember where it is at in CM6, but in CM7 it is in Settings -> CyanogenMod Settings -> Performance and it is called "Lock Home in Memory". I don't remember if it was in the same place or if it was called the same in CM6.

4
  • This option is helpful but not ideal. It is what I'm using right now (and thanks for pointing it out), but sometimes it causes instabilities and sometimes it crashes the current foreground app.
    – Malabarba
    Feb 1, 2012 at 12:23
  • 1
    Any app that stays in memory like you want is going to cause the instabilities you mention. You are forcing the device to keep memory in use for your launcher when it may need to use it for the currently running application. Feb 1, 2012 at 14:34
  • 3
    I understand. That's why I mentioned in the question that the launcher shouldn't have higher priority than the currently running app, but should be higher than the background apps. It's perfectly ok for the launcher to be killed if the active app needs the memory, I just wanted it to be killed after the other background apps have been killed (instead of being the first in line). But it's understandable that such an option just isn't there yet =). Can't have everything.
    – Malabarba
    Feb 1, 2012 at 14:45
  • @BruceConnor, this is probably the one point against the argument that "Android handles memory just fine on its own". I think it does for the most part, it just kills the launcher repeatedly in the process. Not that a task killer would really help.
    – Chance
    Feb 10, 2012 at 14:56
1

Try the v6 Supercharger.

It can make your Homescreen Launcher "Hard To Kill" or "Bulletproof". If you have ICS/JB, be sure to get the ICS/JB version.

Also, be sure to disable the Lock Home in Memory of your launcher (if it has it) before using v6.

1

Try adding: ro.HOME_APP_ADJ=1 to /system/build.prop file and reboot (will require root).

Source: http://forum.xda-developers.com/showthread.php?t=860023

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .