There are a lot of things you can do with root access on an Android phone, but many users are eventually pushed to flashing a ROM for the ultimate in customization. Well, things have been changing a bit over the past year with the introduction and expansion of the Xposed framework. This tool makes customizing a device considerably easier without all that tedious flashing, but is Xposed all it's cracked up to be?
Like with all things root, there are important things you need to know before you go wild tweaking every app and setting on your device. Let's explore the possibilities.
What Is Xposed?
Xposed isn't just another root app, though it comes in the form of an APK that you sideload on a rooted device. This simple action deploys the Xposed framework in your system directory. It reaches into the core components of Android and allows you to make changes that give you a ROM-like experience without leaving the stock software completely behind.
Xposed uses modules, which themselves are also sideloaded on the device. You can think of these as feature packs -- chop up a ROM like Paranoid Android or CyanogenMod into its assorted components, and that's a bit like a module you would install for Xposed. If you want to alter the look of your notification shade, there are modules for that. Additional lock screen shortcuts? Yes, you can get a module for that too. The list goes on and on.
The Xposed Framework has a frontend installer app that lists modules for download and allows you to enable and disable them as needed. There are also plenty you can grab online from places like the Xposed Repo and XDA. There are even some in Google Play. Most of the modules have their own settings UI that you can use to configure the tweaks they offer.
Why Xposed Is Great
So lets say you want to make some changes to the way your phone works. There's only so much you can do with regular apps, so you root. Cool, you have more options, but there are still things that are out of reach without starting over with a custom ROM. Developers work long and hard to create new and interesting feature sets for ROMs, but you take a risk going this route. Sometimes ROM flashes don't go well, or important features are broken, or any number of other things can go wrong.
Xposed lets you skip the hassle and get most of the features you can find in custom ROMs on your own stock ROM.
Xposed lets you skip the hassle and get most of the features you can find in custom ROMs on your own stock ROM. Of paramount importance here is that Xposed is all about softmods -- it doesn't alter system files unless you specifically use a module for that purpose. If you disable your modules and reboot the device, you are completely stock again. That means you can install OTA updates normally and re-enable your tweaks after.
The changes made in Xposed with modules are especially neat because they happen in real time. After you reboot to load a new module, everything happens on the spot. If a module changes your status bar icons, for example, you can see the effects instantly and pick something different if you don't like it.
Why Xposed Not So Great
You are always taking a risk with root apps -- they can break things and you don't always know what they are doing. At least you have superuser packages like SuperSU that can help you keep track of things. Apps have to request access and you can revoke it at any time. Xposed only needs root access when you install it, then everything else is completely transparent to the user because the framework acts as a separate conduit to the system -- it doesn't go through the usual SU channels.
Sounds convenient, right? It's also not terribly safe. Every single module you download has root access by default, and they don't have to ask you before doing things. Android's app ecosystem is a mostly open experience -- anyone can upload apps, but anything fishy will get booted by Google. Xposed modules that are distributed outside the Play Store have virtually no oversight. These modules have root access, and they might abuse it to install things you don't want. For example, an Xposed module might reach into other apps and change settings, search providers, or add widgets.
Xposed modules can also be used to circumvent app licensing and help users pirate content. There have been modules to do innocuous things like remove ads from websites, but some other strip ads from ad-supported services like Pandora or unlock premium features in an app that asks for an in-app purchase. it's not always clear that's what you're getting when you download these packages of tweaks, either. However you feel about copyrights, that's not cool.
If you're willing to be careful and do your research, Xposed can be a great tool. To install Xposed, grab the APK from the Xposed Repo and make sure you have unknown sources allowed and your root access is working correctly. It's a good idea to do a nandroid backup from recovery just in case something goes wrong (assuming you have a custom recovery installed). Some devices might not play nice with the framework and refuse to boot. It's rare but it happens. After rebooting, Xposed should be active.
The modules you'll want to install will vary a lot by device. If you're running a Nexus or mostly stock device like the Moto X, get the GravityBox module. This single module has a huge number of tweaks -- everything from custom Quick Launch tiles to PIE controls. It does the work of a dozen smaller modules and it's updated frequently. GravityBox is available in the Xposed installer listings and the Repo.
A popular all-in-one module for Samsung phones is Wanam Xposed, and it's one of the few Xposed modules you can find in Google Play. It can be used to reskin parts of the OS, change system layouts, enable Hangouts over cellular, and a ton more. For HTC devices there is the Sense 5 Toolbox, which again, aggregates a bunch of tweaks as a single module. This one is in the Xposed Repo and is accessible via the installer app.
The Tinted Status Bar module is neat too -- it matches the statusbar color to the color of the action bar in native apps for a cool look. This one should work on most devices. Notification Mod is popular for its ability to make your notifications accessible from a secure lock screen without making it possible to bypass the security settings. One of the nice things about Xposed is that if you're annoyed by some random thing, chances are other people are too, and some of them know how to create a module.
You can make Xposed work for you if you're careful and vet everything you install. This might be the end of your ROM flashing obsession. It's definitely worth looking into if you've got root and are wondering what to do with it.