Is the Xposed framework compatible in the custom ROM

Here's how to flash a new ROM to your Android phone

When you bought your phone, it was up to date, had the latest version of Android, and made your heart sing. A year or two later, no more updates are released, and performance is a bit sluggish. You can breathe new life into your phone - not to mention tons of useful features - by flashing it with a new custom ROM.

Why should I want to do this?

There are many reasons someone might want to install (or "flash") a new ROM on their phone. You get new features and customizations, you get rid of all of the bloatware that came pre-installed on your phone, and you can get a standard Android version instead of your manufacturer's lame custom UI (I'm talking to you, Samsung). . Most importantly, even if your phone has been all but abandoned by the manufacturer, you can upgrade to the most current and optimized version of Android.

The sad reality is that most manufacturers and network operators are quick to forget about old devices and stop providing updates for them. While we know the economics of the situation - it's not profitable to pay the hardware company to create new updates and support older phones - we still find it a shame that good phones are thrown into the support junk so quickly.

Take, for example, the Samsung Galaxy S III. When it came out in 2012, it was an incredibly popular (and powerful) phone. But Android 4.3 Jelly Bean was the last update ever - and it came 6 months after Google released Jelly Bean. Sure, technology has advanced and is nowhere near cutting edge, but it's still a powerful little device. Phone modifiers and adapters have made it possible for this three year old device to get the latest version of Android - Marshmallow - through custom ROMs like CyanogenMod. And thanks to the performance boost in later versions of Android, people are reporting that it's doing better than ever.

CONNECTED:Will rooting or unlocking void your Android phone's warranty?

So if you have a phone the manufacturer no longer loves, but this one you Even so, flashing new ROM on your phone is a great way to keep it feeling new and snappy.

NOTE: Any time you mess around with the internals of your phone, tablet, or other device in a way that the manufacturer and / or supplier did not intend for you, your warranty - at least for certain parts - will technically be voided and you risk it Your device permanently bricked up. That said, we've rooted, braked, unlocked, reflashed, and other smart modding phones, tablets, consoles, and other bricked-up electronics for years without a single hiccup, let alone a bricked-up device. Read the instructions carefully and you will be fine.

What you will need

You can't just grab a brand new phone and get started flashing ROMs. You need to unlock the bootloader first and install a custom recovery environment like TWRP. So, if you haven't done any of these before, you'll need to follow these guides first, and then come back here.

Second, you need a ROM to flash it. There are innumerable different ROMs from many independent developers and developers. Some are very popular - like CyanogenMod - and available on many devices. Others can be created by multiple independent developers for one or two phones. To find out what types of ROMs are available for your device, contact XDA Developers and search the forum for your particular phone model.

Remember, you want to stick to your phone's exactly Model carriers and all. It is helpful to find the model number and "code name" for your device to separate it from the others. For example, the GSM Galaxy Nexus (GT-i9250) was named "maguro" while the Verizon version (SCH-i515) was named "toro". Verizon Galaxy Nexus users are required to create Flash ROMs for their phone and cannot create Flash ROMs for the GSM AT&T version.

Other phones may use the same model from different vendors, so it may not matter. However, make sure you do your research and download a ROM that is exactly compatible with your device.

In this guide, CyanogenMod 12.1 flashes to our 2013 Moto X, which comes in the form of a flashable ZIP file. So we will be downloading the latest stable version for our phone from the CyanogenMod download page. (In the left sidebar you will see a list of devices that will lead you to the available downloads.) If you want a newer version of Android than the stable versions offer, you can click "Nightly" in the left sidebar to get less stable, but more up-to-date versions.

Whichever ROM you choose, you will likely also need the "Google Apps" zip file, which bundles Google's proprietary apps like Play Store, Gmail, and Google Maps, as these cannot be bundled with ROMs. You can get it from Make sure you download the correct version for your phone's processor and the version of Android (if you're not sure what type of processor your phone is using, you can google it). In our case, we need Google Apps for Android Lollipop 5.1 (based on the CyanogenMod 12.1) for an ARM processor (which the 2013 Moto X is based on).

Okay, you with me so far? Got an unlocked phone with TWRP and your ROM and Google Apps ZIP files? Well let's get started.

How to Flash a ROM Using TWRP Recovery

In order to be able to flash our ROM we have to copy these two .zip files to our phone. Connect your phone with a USB cable and drag the zip files to the phone's internal storage or SD card.

We will erase most of your phone. Your internal storage should remain intact (which is where your photos, music, and other files are stored), but you will lose most of your app settings and other data. If you want to save this data, use the backup or export functions of these apps now. It's probably a good idea to back up your internal storage as well, just in case.

Then turn off your phone and start TWRP recovery. This is different for every phone. For example, you may need to press and hold the power button and the volume down button at the same time, then use the volume buttons to enter recovery mode. Google instructions for your particular model to see how it works.

Once you do, you will be greeted with the familiar TWRP home screen.

NOTE: You should probably create a backup in TWRP before proceeding with this process.

On the home screen, tap the Delete button and swipe the bar below to do a factory reset. You should always do a factory reset before flashing a new ROM. If you are just updating your existing ROM, it might not be necessary. However, if you have problems after flashing, a factory reset can help.

Next, go back to the TWRP home screen and click the Install button.

The following screen will appear. Scroll down and navigate to your ROM's previously transferred .zip file.

Tap the zip file to view this screen. Swipe to confirm the flash.

Flashing the ROM may take a few minutes, so give it time.

When this finishes it's time to flash the file. Return to the home screen and tap the Install button. This time, select your Google Apps zip file and repeat the process. This can also take a while so be patient.

When you're done, tap the "Clear Cache / Dalvik" button that appears and swipe to confirm.

After the cache is cleared, tap the “Reboot System” button to restart Android.

CONNECTED:How to Roll Your Android Phone Using SuperSU and TWRP

When TWRP asks if you want to install SuperSU now, select "Don't Install". Some ROMs, like CyanogenMod, already have root access in the settings. For those of you who are not rooted, it's probably best to flash SuperSU yourself.

It may take a while for the phone to restartFirst Time - Remember, this is the first time you are booting into a new operating system so everything is ready for you. Give it time. If something goes wrong or the phone does not start after a while, restart TWRP and restore from your backup or try starting the flash drive again. Make sure you have downloaded the correct ROM files as well.

CONNECTED:Forget about flashing ROMs: use the Xposed Framework to optimize your Android

That's all there is to it! Play around with your new ROM and keep it if you love it. If you want more ... then check out the various mod communities and forums like XDA Developers to see what else is out there. You could even try sticking with standard Android and use the Xposed Framework to add features one at a time - essentially to create your own "ROM". The world is your oyster so get out there and enjoy it.

Image Credit: iunewind / BigStockPhoto