Theme any app to your taste….

Ever wanted to change a icon from within a app to something you liked ? Like the flappy bird showing up as a picture of your friend!! Change the name of the app to something you liked! Get along to be able to theme any app.

Please be advised that this kind of modifications are for personal use only and that this doesn’t give you the right to redistribute the app as your own.

App theming involves changing the look and the feel of the app and not its functionality. Ideally any changes to any app is made by decompiling the app. All android apps are noting but Java programs.

Lets start the theming…

Before we get any further lets get few basics right :

  • Every app is made in such a way that each and every component is independent. All icons are stored seperately and are called in by the core program where ever needed. This is obvious for images.
  • But same goes for “text lines” within the app. For eg if the developer wants to display “continue” at any instance of the app, he will code the program to call the text string like “XX675“. This text string is then linked to the word “continue.”
  • This may look like complicating a simple process but it is used for a reason – different languages.
  • Android has its users in many many language and if the text lines were coded right into the core program then a separate app would be required for each language. To make this simple there are different XML files which has all the keywords in all the different language So for a french user this “XX675” will be linked to “continuer“, and for a German user to “fortsetzen.”

 

All of this can be done on the device itself.

Screenshot_2014-12-26-14-32-19
App root folder

To start with exploring the app rename the apk of the app from xyz.apk to xyz.zip. With this you will get many sub folders, Few .dex files and a AndroidManifest.xml, which is the backbone of any app. This is the first file the app installer checks while installing the app. It has all the permissions, app name, version etc.

For our purpose we will get into the res folder.  In here you will find many  folders that start with drawable-xxxx . All these folders contain each and every icon that the app needs. And all of these are separated

App icons
App icons

according to the resolution of the device. You cant expect the same app icon to be used in a 10 inch tablet and a 4.5 inch device. So to change any icon you just replace the existing png with the desired one. App icons are generally by the name of “icon.png

 

As long as the app name goes, you can modify it from the Android Manisfest file. Open the file with a xml viewer and go to the application tree. You will find a instance of ” android.lable=”@id/xxxxxxxxx” This is AndroidManisfestthe app name refered to the id. Change this instance and you are good to go.

In some cases the app name may not get changed, this is because the developer has changed the path from where the app name is called and simply changing it from this file will ot change it. In such cases app has to be decompiled. and changes from the xml file located at res/values

 

 

 







BLOG LOGO

Share the post if you liked it and do comment and let me know if there’s anything 🙂

Like the FB page : Droid.it.is

Connect with me on Facebook : Mayank Raj

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s