How to Theme Android Apps Any Way You Want Using Resflux
Resflux is an Xposed mod developed by Julian Paolo Dayag, aka WisdomSky, that provides users with a straightforward and functional way to customize and theme almost every aspect of the packages (apps and system components) installed on their Android device.
From within an easy-to-use interface, Resflux allows you to do things like change app icons and names, translate an app into a different language, override default system settings, and more. Resflux also allows you to easily export your work to save or share with friends.
While Resflux is extremely user-friendly, it doesn't ignore the power users out there. Rather, it offers a powerful scripting feature that allows those with some coding savvy to perform customizations even more efficiently.
Another unique feature of Resflux is that it supports all versions of Android from 2.3.6 (Gingerbread) to 4.4.4 (KitKat), meaning that even those on older hardware can use this mod to customize their devices. Sorry, early L adopters, the Xposed Framework does not work with the developer preview because it does not yet support ART yet.
Let's check it out.
Open the Xposed Installer and search for Resflux from the "Downloads" section. Swipe over to the Versions screen and tap the Download button. Alternatively, you can download the module directly from this link.
Once the mod is installed and activated, you will have a Resflux app installed on your device.
The Laboratory is where you will be doing the bulk of your modifications. When you enter the Laboratory, you will see a listing of all the packages installed on your device.
When you select a package, Resflux will map its resources, determining what assets can be modified. This process takes quite a long time, however, once it has been done for a specific package, it does not need to be done again. Packages in red indicate a system app, green a user app, and yellow a paid app.
Once the resources are mapped, you can navigate between the following five types of assets, via buttons at the top of the page: Drawable, String, Color, Boolean, and Integer.
I'll be showing you changes with the Torch app as an example. Note that it it often necessary to reboot your device for the changes made to take effect.
Drawables are the graphical assets used by a specific package, for example, app icons and images within the app itself. When you tap one of the assets, you are given a file picker to select a new image. The new image must be of the same format as the original.
Strings are text within a package. It is important to note that not all text in an app always shows up as a themable string because some developers hard code the text into their app.
This could be used to translate an app into another language or add some personalized text into an app or system package.
Color is the most commonly themed asset. Here you are able to change many of the colors used within the selected package. When you select the asset, you are presented with a color wheel that easily allows you to pick a new color.
This could be used to make an ugly app or system package match the visual theme of your device.
Boolean assets are typically true or false settings within a package. The usefulness of modifying these settings will vary greatly on a package-by-package basis. You may even be able to turn on disabled features via changing a boolean setting from false to true.
In the example above, I changed the hasHighBrightness boolean value to true, which enables a new setting that was not previously available. Just be aware that often these features are turned off for a reason, so proceed with caution.
Integers are number values which could be used for a vast number of things within an app, making the usefulness of modifying these values vary heavily.
In the example above with the simple Torch app, switching the valueOff value to 1 allowed the flashlight to be turned on but not to be turned off.
Resflux's Export feature allows you to easily export your modifications.
From the Export screen, you are shown all the packages that you have made modifications to—select one or several of them that you would like to save your changes to. When you hit export, you will be asked to set a label for the modifications. The changes are exported into a file in the Resflux folder on your SD card.
From the import screen, you can easily apply a previously exported series of modifications, or one that you have downloaded and placed in the Resflux folder on your SD card.
From just this brief overview, you can see that the potential of the Resflux theme engine is limited only by your imagination. Let us know what interesting modifications you have been able to pull off in the comments below.