It’s Customization Month on Android.Appstorm! Throughout March, we plan to share with you all our tips, tricks, apps and resources to help you improve your phone or tablet experience and make them suit your style.
Time and time again when people ask me why I prefer Android to iOS, my number one answer is, “freedom.” The freedom to customize the homescreen as you see fit, not just moving icons around, the freedom to use custom launchers, and the freedom to install apps that are not on the Play Store. And because Android has such an active developer community, that freedom increases a hundred fold when you root your device. Once you do that, you have the ability to install custom ROMs, or builds of the Android OS. That’s when things get really fun.
I’m going to break this article up into 3 sections: types of custom ROMs, how to find ROMs, and then I’ll have a look at some of my favorite and some of the more popular ROMs. Let’s get started!
For a detailed explanation of what Custom ROMs are, the benefits, risks, and answers to several questions you might be wondering about, check out Ashish’s thorough FAQ.
Two Types of ROMS
The first thing you should know is that there are two types of ROMs out there: OEM and AOSP.
OEM — which stands for Original Equipment Manufacturer — ROMs are those that are re-releases of ROMs for specific devices. For example, you can get a modified OEM ROM for the Galaxy S3 — like FoxHound. It will be the same ROM that comes stock on the S3 with some custom modifications. While these ROMs tend to be more stable/bug-free, they are for a limited audience; that is, only those people who have the specific device the ROM was made for can use it.
The other type of ROM is AOSP — Android Open Source Project. These ROMs were created by developers using the stock Android ROM that anyone can download from the official website. These are much more popular because they aren’t tied to a specific device, but they can be less stable/more buggy with your specific hardware. In many cases, the ROM will also need to be available for your device. We’ll talk more about that in the next section.
It’s likely that most of the time, when looking for custom ROMs, you’ll be looking at AOSP ones to get rid of TouchWiz, Sense or other skins, and benefit from the stock look and fluidity that comes with AOSP. Speaking of, let’s take a look at some places we can find ROMs.
A ROM is basically just a bunch of files zipped up and sent to an installer on your Android device, so theoretically we should be able to find ROMs anywhere. Of course, there are some methods that make the overall process easier. In particular, I have two apps in mind: ROM Manager and Goomanager.
This app was my first foray into the wonderful world of custom ROMs. It comes with its own bootloader/installer called Clockwork Recovery that allows you to install new ROMs from an SD card, reinstall a backup ROM, take backups, and more. As for the app itself, there are a lot of nice features that make finding/installing custom ROMs a lot easier.
The app will let you search for ROMs from a bunch of different developers in a handy directory with ratings and comments. It will also download the ROM and take all of the necessary steps in booting it — namely wiping cache, removing data, creating backup, and so on…
Depending on the ROM you get, you will need to wipe all data and start from scratch. If you’re moving to a new version of the same ROM, say CyanogenMod 10 to CyanogenMod 10.1, you don’t need to. If you move from CyanogenMod to ParanoidAndroid, you need to wipe everything or nothing will work properly. In this case, use Titanium Backup to backup all you apps beforehand then restore them after you flash the ROM.
ROM Manager also has a $5 Premium Version which will give you access to more ROMs, notify you of updates to your current ROM, and more.
My friend recently showed me Goomanager as an alternative to ROM Manager and it’s the one that I prefer. First of all, the app is completely free. It offers all of the things that ROM Manager offers, but at no cost. It’s also a very clean app. Where ROM Manager bugs you to install a bunch of other apps (even if you pay), Goomanager simply looks for and notifies you of new ROMs.
The app also makes it a lot clearer that you’re viewing ROMs compatible with your device. Finally, its own bootloader is a lot more feature rich, user friendly, and supports touch.
There is one website I’d like to mention, and that’s XDA. XDA is widely considered the de-facto source for lots of custom Android apps and ROMs. If you have some knowhow and are looking for new ROMs, Beta ROMs, unofficial add-ons, and more, XDA is the place for you.
Choosing a ROM
Alright! We now know what kind of ROMs there are and where to find them. Now onto the hardest part: choosing a ROM.
There are dozens, even hundreds, of ROM builds to choose from. Different versions for different devices are out there and new ones show up everyday. I’m going to tell you about a few that I’ve used, as well as some popular ones.
CyanogenMod (or CM for short) is one of the most popular ROMs out there, and for good reason. The latest stable version is 10.0, which is built on Android 4.1. The huge team behind it releases regular builds and is constantly updating them.
You can also get CM 10.1, which is built on Android 4.2, but beware, it was incredibly buggy and unstable on my Galaxy Nexus.
CM has a lot of great features added on top of stock Android, like the ability to add 4 apps to the swipe wheel on the lockscreen for faster access. There are also lockscreen gestures, themes, hardware profiles to help boost performance, and a feature called “Phone Goggles,” which will filter communications based on user-defined criteria.
I was using CM10 for a while but noticed that it degraded my battery life quite a bit even after changing some of the hardware profiles. Once I upgraded to CM 10.1 the phone became unusable and I decided to switch ROMs. What I’m currently using is…
This is a super clean, really fast ROM that I’m incredibly happy with. Currently on version 3.10, ParanoidAndroid boasts Android 4.2.2 and a lot of added great features. The most notable is their Hybrid Mode, which allows you to run UI elements and even certain apps as if your device were a tablet, a phone, or a combination of both. You can also set custom colors for apps so that the notification and menu bars match the colors of the app you’re in.
Like I said before, this is my current ROM and I would strongly recommend it. I’ve seen a pretty decent improvement in my battery as compared to CM10 and perhaps the best part is that there are no added apps. Where CM10 comes with it’s own ‘bloatware’, ParanoidAndroid has none of that.
MIUI is a beautiful custom ROM that focuses a lot on design and UI. There are custom icon sets, improved call and SMS screens, and a very nice, feature-rich dropdown toggle menu with 19 functions you can turn on or off.
There are also over 200 added features including flashlight, a notes app, weather, and a lot of fantastic security apps and features. I used it with my HTC Incredible and was very happy with it. It’s currently using version 4.1 of Android.
Here are two pretty popular ROMs that I haven’t used. The first one, AOKP looks really nice, and is using Android 4.2.2. Some of the features it boasts are the ability to customize the LED notifications, navigation bars, and performance, changing the CPU speeds and voltages used.
SuperNexus is a ROM designed to bring stock Android to other devices. While it has a few custom features, you’re getting the standard Android experience here. The only drawback is that it only supports a few devices. It is using 4.2.1.
No matter what ROM you install, keep in mind that the AOSP ones likely will not come with Google Apps (GMail, Calendar, Play, etc). While most installers make that clear and even give you the option to download in separately, make sure you know ahead of time because a lot of the functionality in Android relies on those apps!
Phew! We covered a lot of ground today. We talked about types of ROMs, where to find them, and some good ones to check out! My current set-up and the one I recommend is Goomanager and ParanoidAndroid, but there are tons of options out there. What do you use?