I haven't had time to test all of them, but I will - and here's a guide I made that'll hopefully make testing different ROMs easier.
Before continuing with this guide, make sure that you have:
- a LOT of free time, depending on how many ROMs you want to test;
- unlocked and rooted your device;
- downloaded all the ROMs you want to test;
- have installed a good recovery - I would recommend the latest version of TWRP;
- common sense.
- (OPTIONAL) a spare microSD card of at least 8GB. This'll make everything easier, as you won't have to delete stuff in order to fit all your ZIPs and backups.
Things to remember
- Make sure you know how exactly to restore your device to how it was before following this guide.
- You should know what you're doing. One small mistake can lead to your device being completely unusable!
- You should know what features you're looking for in a ROM. It's never nice to have gone all the way to flash a different ROM, only to discover that feature X doesn't work. Ask questions in the ROM thread, if you like.
- You can always ask help from others, should you have any trouble with your device.
- When using custom ROMs (or any customization, for that matter), do NOT ask for ETAs. Our developers are doing their work at their own leisure and during their own time, and they don't get their pay from you.
Ready? Let's get going!
A good Android user always backs up before doing anything radical to their phone, and that's precisely what we're going to do. There are three ways to go about this:
The easy way
The easy way is through making a Nandroid backup. This is particularly easy to do in TWRP, as all you need to do is reboot into recovery, press Backup, select the partitions you want to back up and whether to compress them, and start backing up. Simple as that.
Pros: Easy to restore your data once you're finished testing ROMs.
Cons: It's somewhat hard to restore individual pieces of data (such as messages and apps) instead of the whole thing.
The (slightly) more complicated way
This way deals with TitaniumBackup, an absolute must-have app for every Android user out there.
With TitaniumBackup, you can choose to back up individual apps (and even update their individual backups). TB isn't limited to backing up/restoring data, though; it can do so much more - remove bloatware, freeze apps you don't use, make a flashable ZIP out of your backups... the list goes on.
Pros: Finer control over what data gets backed up. Very powerful tool in migrating ROMs.
Cons: Somewhat outdated and intimidating interface; and features are reduced without buying the PRO version.
The Google way
This one is the simplest way of all three, though it only works if you have a) GApps and have signed in to your Google account, b) if you've agreed to let Google back your data up when you first set up your device, and c) if you have Settings > Backup & reset > Back up my data enabled.
Google automatically backs up almost all of your data to its servers, ready to be restored when you do a factory reset/switch to a new phone. A list of all data that are backed up can be seen by going to Settings > Accounts > Google > (your email address).
Notable exceptions to the data backed up are messages, which you have to back up yourself - I recommend SMS Backup & Restore for that.
Now that you have your data backed up, let's get flashing.
Put your ROMs/kernels/GApps on your SD card, then reboot to recovery.
1. Wiping / factory resetting
This is why we back up your data in the first place. Different ROMs need different data, and data left over from one ROM can cause another ROM to get stuck in a bootloop.
Tip: If you're using TWRP, try enabling Use rm -rf instead of formatting in Advanced settings. Formatting doesn't really have any perceivable advantages over simply removing the contents of your data partition (unless you somehow corrupted it), and it actually causes higher wear on your storage chip. (Storage doesn't last forever - I've had my old Samsung bricked because I reformatted too much.)
2. Flashing the ROM and other addons
In CWM, it's called install zip (from sdcard); in TWRP, it's simply called Install. Browse to your ROM zip and install.
Tip: If you're using TWRP, you can add ZIPs to the ZIP queue in this order: ROM > GApps (if any) > Kernel (if any) > Addons/Patches (if any).
Users of CWM must manually flash each ZIP, in the same order.
Now all that's left to do is pray for the best and reboot.
If you flashed GApps, do NOT let Google restore data yet. We'll do that later.
Some ROMs, especially sprout4 ROMs, require patches when installing on sprout8 devices in order to provide the most optimal experience. Try flashing those to see if the ROM gets any better for you.
Rinse & repeat?
So, have you decided that this ROM is for you?
Yes, this ROM is awesome! I love it!
- If you backed up earlier using Google, do another factory reset and this time, let Google restore your data.
- If you used Titanium for backup, you can safely restore your data now.
- If you made a Nandroid backup, you [B]technically[B] can restore your backup as-is since most of the ROMs available for sprout are CM-based; but I wouldn't recommend this as this can cause bootloops. Otherwise, you can manually restore your data one-by-one - but this is a time-consuming process.
I'm not quite sure I like this ROM yet.
Well that's okay, just repeat this guide from the start.
Now that you've decided on what ROM to use, you can safely delete your backups and ZIPs - though it would be better to keep them as they might come in handy if your device starts having problems.
- If you're flashing a Marshmallow ROM, don't flash Xposed right after you flash your ROM as this may cause a bootloop.
- Never ask for ETAs on ROM threads. That's rude.