Whether you're resisting the temptation to upgrade to newer, faster hardware, or a year's worth of use has made your Android phone feel slow and laggy, here are some ways to make your older phone run a bit smoother.
This guide provides a number of tips you can use to speed up your phone, and while not every tip will apply to you or your phone, you should find at least a few tips in here that will. Whether you've rooted your phone, overclocked, flashed a new ROM, or none of the above, you'll be able to take advantage of a number of the tweaks below to get your phone from sluggish and glitchy to quick and smooth.
Everyone's phone is different, too, so note that some of the more advanced tweaks may take a bit of trial and error on your part. I've experienced good things with these tweaks on my Motorola Droid (which, yes, had gotten pretty darn sluggish and glitchy, even for a barely year-old phone), but I'll note where a different approach to a specific tweak will help owners of older or more underpowered phones. Users with newer phones may not need these tips as much, but I've heard from several sources that even speedy phones have benefited from these tips, so they're worth playing around with no matter what phone you have.
If You Haven't Rooted Your Phone
There are a lot of great tweaks out there for rooted phones, but there are a ton of really simple things you can do to speed up your phone, even if you haven't done any hacking whatsoever.
Try a New Home Screen Launcher
We've talked about the benefits of other home screen launchers on more than one occasion, but I can't stress how great an upgrade this can be. As always, I'm a huge proponent of LauncherPro, as it will not only bring you a noticeable speed increase upon installing it, but it also has lots of advanced features we can tweak to boost our speed even further (more on that later). Of course, ADWLauncher is also very popular, and the Android Market is rife with other options.
I'm going to write the rest of this tutorial from the perspective of a LauncherPro user, since from what I've seen, it has the most speed-boosting options, but you should be able to find many of the settings I mention below in other launchers, too—I'll note where a few of them are along the way, but you may have to do some poking around of your own depending on what Launcher you're using.
Lower The Number Of Home Screens You Use And Ditch Those Widgets
If you have an HTC phone with the exclusive Sense UI and you'd rather not ditch it for something like LauncherPro, that's fine—you can still put this tip into practice. While some phones come with a mere three home screens, many (including most HTC phones) come with up to seven. While this is pretty handy if you like lots of icons and widgets (which I'll mention again in a moment), they can really take up a lot of memory on your phone, which can cause jerky animations, lag and forced closes.
In our guide to organising your Android home screen, we mentioned the two philosophies behind home screen usage. It's fine to have lots of home screens, icons and widgets, but if your phone isn't performing up to your standards, you may have to compromise and try using fewer home screens (or at least find a middle ground). I went down from seven to three home screens and haven't looked back—the jump in performance was pretty incredible.
If you're using LauncherPro, you can pick your number of home screens by hitting the Menu button on your phone, tapping Preferences, then tapping Homescreen Settings. If you're sticking with your stock launcher, you may not have the option to actually decrease the number of home screens, but you can still benefit by removing some icons and widgets from two to four of your home screens. It probably won't give you as big of a benefit as getting rid of the screens entirely, but those widgets can still suck up tons of memory, and deleting them from your home screen should make your phone run noticeably smoother.
Uninstall Misbehaving Apps
When we discussed the myth of Android task killers, we mentioned that one of the real problems with slow phones is running poorly coded apps—apps that use up too much CPU in the background. Previously mentioned Watchdog is still a great way to keep track of those apps: if something is constantly running in the background, it may be causing some of the performance hits on your device. Unless it's something you can't live without (and are thus willing to live with any slowness it might cause), uninstall it and find an alternative.
Note that some of the worst offenders in this category are apps that come pre-installed on your phone. Unfortunately, you need to be rooted to uninstall these, but we'll talk about that in a bit.
Uninstall or Move Apps to Free Up Space
It's also worth mentioning that even if an app doesn't misbehave (heck, even if you don't run it at all), it can cause slowdowns on your device. Believe it or not, the more free space you have in your phone's internal memory, the faster your phone can write to the disk. If you aren't sure how much free space your phone has, you can check it by going to Settings > SD Card & Phone Storage to see. You can also see which ones are taking up the most space by going to Settings > Applications > Manage Applications, hitting Menu, and sorting them by size. If you find you aren't even using an app that's hogging space, you might as well uninstall it—no point in keeping it around just so it can slow down your phone.
Your other option is to use the ever-handy Apps2Sd to move some of those apps off your phone's internal storage and onto your SD card. By default, the developer of a given app usually decides whether an app will install to your SD card, but with the App 2 SD app, you can do it yourself. Just pop open the app, and you'll get a list of apps that are on your internal storage that have the ability to move to the SD card. Just move them over to free up space. If you've rooted your phone and installed CyanogenMod (see below), you can do this without an app just by going to Settings > Applications > Manage Applications > All, hitting an Application, and hitting the "Move to SD Card" button (if it's supported by that application).
Tweak Your Launcher's Memory Usage
If you really want to dig into your system's settings (or you compromised on that "use fewer home screens" tip), there are a few more advanced tweaks you can make to your launcher that should help it run a bit smoother.
If you're using LauncherPro, hit the Menu button and go to Preferences > Advanced Settings > Memory Usage Settings. While you can tweak the Advanced Settings to your liking, the easiest way to take advantage it to use one of LauncherPro's many Memory Usage Presets. These presets tweak different settings to fit the needs for different people and different phones. You can read more about these settings on the LauncherPro blog, but here's what you really need to know:
Starting with version 0.6.1, there is a new option in the preferences called "Memory usage". Right now there are three modes; light, medium and high.
- Light mode is basically what 0.6.0 uses, and it's made for users that have 5 or more screens, a lot of widgets/icons (or many full-screen widgets), 3D drawer, etc.
- Medium is the default, it should work best for most users with a moderate-to-high amount of widgets/icons.
- High mode doesn't try to optimise memory usage. It's very much like the early versions of LauncherPro, so it should give the best performance. If you don't have a lot of widgets/icons on your screens, you should try this setting.
Note that there are now more than three presets, but the general premise remains the same. If you're still filling up your home screen with icons and widgets, you might want to try out a setting on the low end of the list. If you've taken my advice thus far, I can tell you High mode will give you a pretty nice performance boost.
One great thing about LauncherPro is that if you go to Preferences > Advanced Settings and check Display Memory Usages, you'll be able to see how much RAM is being used at any given time. This is a good way to tell whether you have RAM to allocate to these different things, or whether the amount of RAM is too small to let LauncherPro keep trying to use it all up.
If you're using ADWLauncher, you won't have nearly as many choices, but I would still recommend going into ADW's settings, hitting System Preferences, and playing around with a few of the features there like Scrolling cache and System persistent, which should perform similar tasks (albeit not as well as LauncherPro or CyanogenMod's similar settings, which I'll talk about in the section for rooted phones).
If You've Rooted Your Phone
If you've taken the plunge and rooted your Android device, you have a few more options available to you that should help you eke some extra speed out of your device. Note that these are a bit more advanced (as would be expected with root-only options), and require a bit more care, so be sure to backup your phone before you make any huge changes to it in case anything goes wrong.
Install a Custom ROM
Still one of the best reasons to root your phone is to install a custom ROM, not only for the neat features it brings but for the speed increases it can bring your phone. We've gone through the details of installing custom ROMs before, so I won't go too deeply into it here, but I do recommend it if you need some speed increases, especially if the ROM is based off a later version of Android than your phone currently has. Lots of phones are still stuck with 2.1 and earlier, and while some ROMs can run a bit slower than stock Android on some phones, the speed increases Android 2.2 brings will likely outweigh them.
Many ROMs are built for speed and stability, and while you'll get a great performance boost from them, I've found that even with a ROM like CyanogenMod I've been able to eke some good performance out of my phone (especially by tweaking some of CyanogenMod's advanced features). So don't think that you have to choose a ROM like Bugless Beast just because you have an old phone. Of course, trying a few different ROMs is always a good idea to see what works best for you.
Overclock Your Phone's Processor
A surefire way to get a speed boost out of your old, underpowered phone is to overclock it. We've also discussed this already before, so we won't get too deep into it here, but I will remind you that to overclock, you'll need to install a custom kernel. These are specific to your device, so you'll have to do some searching for compatible overclocking kernels to find one that's right for you. Generally, kernels are organized by two things: voltage and clock speed. The higher clock speed you choose, the more likely you'll need a higher voltage kernel (which, by the way, will drain battery faster). As long as you're not going overboard with the overclocking, you should be able to get by with a low or standard voltage kernel without a problem.
If your phone came pre-installed with all sorts of applications that you don't need, you can unisntall them with an app called Titanium Backup. Once you've downloaded it, just open it up and hit the "Backup/Restore" button at the top of the screen. Tap the app you want to get rid of. You'll probably want to back it up first, in case it ends up being integral to your phone's operation, but once you have you can uninstall it from the same screen. Alternatively, you can just freeze the app, which won't free up space on your phone's memory, but will keep it from running in the background and slowing your phone down. Note also that, like all these root-only options, you could seriously mess up your phone if you go too crazy, so maybe a full-phone backup is also a good choice here.
Play With Your ROM's Advanced Settings
This is one of the most difficult tweaks to perform on your phone, because it varies so much from person to person what works best. Furthermore, some ROMs may not have these settings in their preferences—you may have to do some terminal work to enable them. I'll go through what they are, and point out their location in the CyanogenMod ROM since it's the most popular and widely available, but if you don't have them in your ROMs settings you may have to do some googling to find out how to tweak them. That said, here are some of the handier features.
Compcache: Compcache is essentially virtual swap space in your RAM. In a nutshell, it gives you "more" RAM, but it's a bit slower than regular RAM because it takes CPU to compress and decompress packages that are swapped into it. This is one of the most debated features: many find that it helps things like the home screen load faster; others prefer to keep it off. Try it both ways and see what works for you. New versions of CyanogenMod also allow you to choose how much RAM compcache sets aside as virtual swap space, so you can play around with that as you so choose.
JIT: JIT is a Java compiler available in Android 2.2. Enabling it won't give you a big speed increase as far as small apps, loading the home screen, and other such niceties, but it will likely give you a big speed boost in intense applications, like games.
Lock Home in Memory: This is similar to the LauncherPro memory features we discussed above, as it attempts to do exactly what its name implies: keep your home screens in memory so that it doesn't have to keep redrawing them all the time. I'd recommend enabling this if you have the memory for it.
VM Heap Size: This is one of the more interesting settings. The VM heap size is the maximum amount of memory an application is allowed to allocate. Resource-intensive apps will require a larger VM heap, while simper apps don't need as much. You'll want to play around with this setting, but you should be able to tell after going through the other settings what setting you'll want here. If you allocating tons of memory to LauncherPro, or your have JIT enabled for resource-intensive applications, you might want to try 32M. If you're trying a more minimalistic approach to everything, you might find 16M or even 12M boosts the speed of your phone considerably.
With all these settings, try changing just one at a time and see how your phone responds over the course of a day or two. Everyone's settings will be different; there is no one size fits all here. Depending on your phone, the apps you use, how you've set up your home screens, and other tweaks you've made, your phone will respond differently to different settings. So, if you're dedicated to messing around with them, go for it—otherwise, you'll probably just want to leave them at their defaults (which are set on a per-model basis, for what it's worth). Also note that if you start messing with these settings, you never know what might happen, so many developers won't let you submit bug reports if you've changed the defaults. And, of course, always always always make a backup.
There's no doubt some of these tips are easier than others, but no matter who you are, there should be some tweaks here that help you out. While everyone's phone is different, it's likely many of you have found certain tweaks more effective than others, too, so share your own tweaks and the results you get with the above with each other in the comments.