[Android Themes] Raiz:
IV-What and how to modify

​

This part is gigantic, I'll try to include as much link as I can, this part isn't supposed to stay like that very long, as it contains very few of the hundreds of guide about theming in XDA. Help me out by suggesting some links.

​

A)Resources (XML):

​

​

1-Tools

​

To edit XMLs you can use whatever text editor you want, but I’d recommend Visual Studio Code. It has solid plug-ins that may come handy to avoid mistakes when editing.

You can also sort of visualize XMLs with Android Studio's Layout Inspector.

You have to open the apk’s folder in Android Studio and browse to the desired xml. Opening the resource manager will aslo allow you to visualize the XML files to a certain extent, but it's not cristal clear (see the screenshot) so I don’t use that very often, but it’s good to know.

Spoiler content hidden.

2-What’s xml

​

This subject is very long, you can learn a lot of things. Here are some links (increasingly detailed) to learn about XML:

A Post in [GUIDE] Want to learn how to theme? by @theimpaler747

Google’s "Guide" (very complete): that google link is about resources in general, so it explains XMLs but not only XMLs

A Reference for Codenames in XMLs

3-Modifications:

​

You can modify deeply the UI by editing XMLs, here are some guides to make you familiar with some techniques. Again this is a very vast field, it deserve a thread itself, and this list clearly isn"t finished. Here are my favourites ones:

XML 101 by @Ticklefish

[GUIDE][RES] Android Animation XML resources for Activity Transition by @niranjan94

Find the code you want to modify by @Raiz (Me lol)

[TUTORIAL] Where to find the colors for making a theme by @KBanause

[TUT][JB] HOW TO THEME SystemUI.apk for TOTALLY newbie! by @joehanh88

[Reference] Interactive Phone Modification [GUIDE] by @pstevep , this is AN ABSOLUTE UNIT OF INDEX!

[Tutorial][APP] PinP Shortcuts | How to Implement Picture in Picture Mode [API 26+] by @Geeks Empire

[Overlay] Enable Night Light, Auto-Brightness, Ambient Display & more on Treble ROM by @MishaalRahman

Let me know

4-Precaution:

​

When modifying apks, some errors can be very frustrating, yet very easy to fix. Here are some usual cause of struggle:

Not properly set JAVA_HOME

The tools used (like apktool.jar) aren’t chmod +x (aren’t allowed to be executed)

You have to add java -jar [command] before every .jar tools commands for it to run

Tell me, don't be shy

For every tool related bug, please refer to their GitHubs, sometimes you’ll find a solution by searching. And XDA threads are also plenty of answers! (and if you’re really not lucky maybe stack overflow can help).

B)Smali:

​

That’s a tough one. First, if you want my advice, editing them with Visual Studio Code and the smali plugin is way easier to find mistakes. There’s also a smali plugin for Android studio (and IntelliJ based IDE) made by Jesus-Freke, it is called smalidea.

Now I found one reaaallllyy awesome thread here on XDA about smali:

[GUIDE][SMALI]Understanding and Creating Smali Mods & General Smali Questions by @Goldie

Something else maybe? Tell me ;)

This is my reference, I’m still learning smali tho, this list may be updated, but this thread is pure gold, go check it out!

Credit for this part:

Resources:

@Ticklefish , for XML 101 (but also for TMA), this is really one of my favourite thread on XDA

All the other members mentioned in the above list

Smali:

@Jesus-Freke , for his work on smali, baksmali (integrated in APKtool) and smalidea

@Goldie , for the amazing thread explaining smali