[GUIDE] ICS Style 'Settings.apk' - Make it yourself !! !!
Hi all !! This is a guide on how to mod your Settings.apk to make it like an ICS's one !!
My sincere credits to iiandskater. He is the one who FIRST made MODS like this. I learnt these by comparing his MOD !!
He hasn't come up with a guide because he doesn't have time . (I think so!)
If you have completed modding and posting it ( on any website/forum), then please give credits and give a link to this thread !! This helps it reaching more people !! Thanks.
This guide helps you to mod your settings' main screen only. If you want mod even other screens, then you need to read - why this/that step is done.
If you want to know 'Why is this/that step done?' , then read the post completely !!
I'll start from the basics.
Starting with basics:
1. Decompile your Settings.apk with 'apktool' (or) Apk Multi-tool (or) anything like that of your comfort ! Why is this/that step done?: It is done in order to decode .xml files the apk.
I decompiled with apktool.
2. Now navigate to Decompiled_Folder\res\values
3. There, open 'strings.xml' with notepad++
4. Go to the very end of the file, there above </resources>, add the following:
7. Your 'settings.xml' will look like this (may not be exact)(this is my modded settings.xml - i'll explain what i have modded):
Now i have separated different 'things'/tags with an empty line between them, so that you won't get confused:
Here, i will explain every different 'things'/tags with only one example, other things, you yourself will have try because others will be similar to what i explain.
Preference screen:
From the above picture, i am taking only the circled (can't 'define' its radius lol ).
Now lets zoom it:
On reading it, you yourself can understand that:
---android:title="@string/wifi_quick_toggle_tittle" refers to a TEXT registered under the string name "wifi_quick_toggle_tittle" in the 'strings.xml'.
Now check in your 'strings.xml', which is located at res/values/, by searching for "wifi_quick_toggle_tittle". There you will find this line/line similar to this:
You can very well understand that the TEXT between the tags here(in strings.xml) will appear on the screen !!
---settings:icon="@drawable/ic_settings_wireless"> refers to the icon located at res/drawable-ldpi (or) res/drawable-xxxx(that of your phone).
You can leave other things as it is but except for android:targetClass="com.android.settings.wifi.Wif iSettings". This is because according to this only, you are directed to another screen on selecting it !!
Here, i need to go to Wi-Fi settings on selecting it directly from the main screen. So i need to change it.
To change, i opened res/xml/wireless_settings.xml
There, like what we have seen earlier, many preference screens will be defined. There i found the preference screen of Wi-Fi settings
I copied the android:targetClass="xxxxxxxxxxxx"(something given there) to Settings.xml file.
If you want to do it for Bluetooth, then copy any of the preference screen completely [from <com.android.settings...... to </com.android.settings.IconPreferenceScreen>
Then make changes in the title , icon, and target classs.
Not yet over, last thing:
Adding custom categories like Device, Personal, System etc.
It is this line that makes it:
Place it anywhere above (or) in-between any two preference screens !!
After making all necessary changes and saving the 'xml' files, re-compile (or) build the apk. You should not get any error.
9. After building it, you'll find the new 'Settings.apk' in decompiled_folder/dist. Do NOT use it.
Now Go the folder where you have ORIGINAL/STOCK Settings.apk. Now simply extract it to any folder, say "settings-new", using 7zip.
8. Now go to decompiled_folder/build/apk
From there copy the 'resources.arsc' file and paste it in "Settings-new" folder. Replace it.
9. Now again, go to decompiled_folder/build/apk/res/xml. There copy 'settings.xml'
Paste it in Settings-new/res/xml folder. Replace if asked.
10. ICONS:
After downloading the icons.zip, you'll find the icons in 'drawable-ldpi' folder. Copy everything and paste it in Settings-new/res/drawable-xxxx (that of your phone). [If you do not know what is that 'xxxx' for your phone, then paste it in every 'drawable-ldpi/mdpi' folder]
Replace if asked.
11. Now come back and open "Settings-new" folder. You'll find 6 objects there, including folders. Now select them all --> "7zip" --> "Add to archive...". There, select 'Archive format as 'zip'and 'compression level' as 'Store' and then select 'ok'.
12.Now rename the newly formed 'xxxx.zip' file to 'xxxx.apk'.
Before copying to system/app rename it to Settings.apk instead some xxxx.apk !!
Now your apk is ready to be put in system/app !!
If you have completed everything and would like to distribute it, then download the 'Pre-scripted-update.zip' from attachments.
Open the archive with 7zip (no need to extract) go to system/app. Just drag and drop your modded 'Settings.apk'.
Thats all !! Close it and flash it via recovery !!
Thats all....i believe........still can refine it.......!
Icons-uploaded........!!
If you have completed modding and posting it ( on any website/forum), then please give credits and give a link to this thread !! This helps it reaching more people !! Thanks.
again good work bro....nice tut... u r going great man! cheers!!!!
PHONE: SAMF**KED....GALAXY 3
ROM: GingerDX(Modded as for my needs)
KERNEL:CM7 apollo#889 OC
THEME: My Modded Achep's Theme
MY THEME WORK FOR G3: Antonda Design Blue for Froyo
Antonda Design Green for Froyo
AOSP Gingerbread for Froyo
ICS Theme for Froyo
Sensation Crysis for Froyo
Theme Elegance for Froyo
Hi-Tech Sense for Froyo
Ubuntu has become the most successful *nix distribution for a number of reasons, … more
XDA Developers was founded by developers, for developers. It is now a valuable resource for people who want to make the most of their mobile devices, from customizing the look and feel to adding new functionality. Are you a developer?