[GUIDE[CM11] How to create themes for the new Theme Chooser - Android Themes

{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
- Section One -
Hey guys! I'm back again with another contribution to the community, this time I'm posting a guide on behalf of my theme, Svelte UI.
I have noticed there is a very few amount of theme's available for the new CyanogenMod Theme Chooser out there. And hopefully I can change this.
This guide will cover everything needed to create a Theme, from creating the initial project to theming itself. And some tips on how I theme.
And to make all you lovely people even happier. I will provide all code and even a sample .apk
And also I don't want to add screenshots of my desktop to this thread, because the resolution will be way to big. Instead I'll have links. So let's get started shall we?
VIDEO TUTORIALS
[x] One - Create Project
[x] Two - Initial Setup
More coming.
- Section One -
This section is vital for you to accomplish your theme, so please do not skim through it.
For the requirements, you need an IDE. Yes I will be showing you how build the theme from scratch and not a template.
Use an IDE that you're comfortable with, I wont be showing yo how to use it. I will be using Eclipse for this tutorial.
You will need an image editing program, I am going to use Paint.NET. It's free, advanced, and does the job as good as Photoshop.
We are also going to need patience. Yeap. Theming takes allot of time and patience, it is frustrating especially if you're doing precise editing but it's worth it at the end.
One more thing we are going to need is, an APK decompiler. So download one you like, install the required .apk's for it to work properly.
Then get hold of the SystemUI.apk and Framework-res.apk, we're going to use this later.
- Section One -
Okay, now go ahead and open up your IDE, and create a new Project, give it a name and an appropriate package name.
For example mine is "Svelte UI" and "com.ascendapps.sui". [View Screenshot]
Now click next till you end the project setup. Once your project has been created.
- Section Two -
Go ahead and delete the following folders.
[src, layout, menu, values-sw600dp, and values-sw720dp-land also delete drawable-ldpi if you want] [View Screenshot]
Now in the values folder, create a new xml and call it "public.xml" and make sure to delete the "dimens.xml" file.
Inside the xml file (public.xml) add the following code - [View Screenshot]
Code:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<public type="drawable" name="ic_launcher" id="0x7f020000" />
<public type="string" name="app_name" id="0x7f030000" />
<public type="style" name="AppBaseTheme" id="0x7f040000" />
<public type="style" name="AppTheme" id="0x7f040001" />
</resources>
- Section Three -
Now go ahead and save it. Make you save things when working throughout your project, better be safe than sorry.
Open up AndroidManifest.xml, and add the following code and do what it tells you - [View Screenshot]
Code:
<?xml version="1.0" encoding="utf-8"?>
<manifest android:versionCode="7" android:versionName="1.0" package="com.ascendapps.sui" <!-- Enter the package name of your project that you had done in the setup earlier -->
xmlns:android="http://schemas.android.com/apk/res/android">
<uses-feature android:name="org.cyanogenmod.theme" android:required="true" />
<application android:label="Svelte" android:icon="@drawable/ic_launcher" android:hasCode="false" /> <!-- Change label to theme name -->
<meta-data android:name="org.cyanogenmod.theme.name" android:value="Svelte" /> <!-- Name of Theme -->
<meta-data android:name="org.cyanogenmod.theme.author" android:value="Krish Gounder" /> <!-- Your Name -->
</manifest>
.
Please make sure to delete the Info statements once you've finished editing the xml.
For example delete the lines in green. Which is the following -
Code:
<!-- Your Name -->
<!-- Name of Theme -->
<!-- Change label to theme name -->
<!-- Enter the package name of your project that you had done in the setup earlier -->
- Section Four -
Now save your project, and close everything. Once closed, navigate to your project workspace. In there you should see your projects name.
Like this . [View Screenshot]
Open the the project then inside the work folder open the "Assets" folder. This is where everything comes to life.
Go ahead, and create the things you want to be included in your theme.
- fonts - If you wish to use different fonts in your theme.
- images - The images that are displayed when applying the theme.
- overlays - You must create this folder, this is where all the theming images are kept.
- wallpapers - If you want to add a wallpaper to your theme. Use .jpg
- bootanimation- Add a .zip file of your bootanimation in here.
- alarms - If you want to add alarm sounds to your theme.
- lockscreen - Add a lockscreen wallpaper. Use .jpg
- notifications - If you want notification sounds.
- ringtones - If you want to have ringtone sounds.
I will be using images, overlays and wallpapers.
So inside the images folder you will need -
lockscreen_preview.jpg if you are having a lockscreen wallpaper.
styles_preview.jpg just add your wallpaper.
wallpaper_preview.jpg Just use the wallpaper and add an icon in the middle of the image.
Add your wallpaper in the wallpapers folder and name it - wallpaper1.jpg
[Screenshot One] - [Screenshot Two] Now we've completed this section.
- Section One -
For theming you'll need a reasonable image editing software, Paint.NET works quite well.
So you want to know how to theme apps and components? Let's start with the framework-res.apk.
Earlier, I had stated that you'll need an APK Decompiler. So using the decompiler, decompile the framework-res.apk.
Open up to decompiled project and navigate to the folder you wish to work on. for example, drawable-xxhdpi.
Now in your theme work folder, go into "overlays" and create a folder called "android"
Inside there, create a folder called "res" and inside "res" create drawable-xxhdpi or the folder you chose.
Now go back to the project you decompiled earlier, and copy in all the .png files that you know you'll theme.
- Section Two -
How to them other apps and get it to work. the way the theme chooser knows what to them is by package names.
So if you want to theme an app you''l need to find out it's package name. For example Instagram is - com.android.instagram
If you make a folder with that name, and inside you have to create the res folder, it's basically the same layout but the initial name is the package name.
- Section Three -
It's often weird to work with .9.png's when you come face to face with it the first time. The best way to edit them is by working with the image inside the borders.
By this I mean, when you open the image in an editor it has these black lines around the edges, using a selecting tool. select everything inside the border, and do not select the border.
These borders help the Android system with stretching the image.
CREDITS -
[x] Me for preparing this guide.
[x] CyanogenMod Team for the Theme Chooser.
[x] Imgur
[x] XDA
[x] Eclipse
[x] QuickMod Dev
[x] And curiosity.

RESERVED
This section is user based, so if you need help with theming something.
Let me know and I'll update this thread post and I'll directly link you to the info.
When theming a specific application, whether it's a system app or a normal app.
You will need to give the folder the package name so the system knows what to theme.
So if you want to theme the settings app you'll have to name the folder "com.android.settings".
Thanks to @Vincentmrl He requested me to add these so people have a better idea and don't get confused.
The names on the left correspond to the app to right.
android (framework-res.apk)
com.android.dialer (Dialer.apk)
com.android.email (Email.apk)
com.android.keyguard (Keyguard.apk , lockscreen theming)
com.android.settings (Settings.apk)
com.android.systemui (SystemUI.apk)
I will be adding more to these. And easy way of finding the apps package name is by looking at its PlayStore url.
Or by checking in android app manager.
- Section One - Add your own custom background
First of all, you'll need to create or find your own image.
Make sure it's a reasonable size, this is basically a common sense statement.
Don't use a really small image. Okay once you've gotten your image.
Change the name of the image to the following - background_holo_dark.png
Place this image in the following folder - /overlays/android/res/drawable-nodpi
Once done, you need a way for the system to find the image, you can do this by creating a new styles.xml in the values folder.
So go ahead and create a file named styles.xml in the values folder.
The next thing you have to do is add this code inside your xml file.
Code:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="Theme.Black" parent="@*android:style/Theme">
<item name="android:colorBackground">@color/transparent</item>
<item name="android:windowBackground">@drawable/background_holo_dark</item>
</style>
</resources>
Save the file and you're done.

Thank you guy, I love it, maybe I'll do one

GæxD said:
Thank you guy, I love it, maybe I'll do one
Click to expand...
Click to collapse
Goodluck! let me know when you make it. I'll be glad to check it out. :]
Sent from my Nexus 5 using Tapatalk

krishneelg3 said:
Goodluck! let me know when you make it. I'll be glad to check it out. :]
Sent from my Nexus 5 using Tapatalk
Click to expand...
Click to collapse
Thanks again
I have one question, how to change this colors? Example, I marked the colors in red:

The switch button can be change in the framework-res.apk.
And the text can be changed in colors.xml. it should be displayed as "primary_text" and "secondary_text".
Edit - You may need to look in Settings.apk for the text colors. If they don't work, then look for it in framework-res.apk.
It will be a trial and error thing, so you'll have to test many times.
Sent from my Nexus 5 using Tapatalk

krishneelg3 said:
The switch button can be change in the framework-res.apk.
And the text can be changed in colors.xml. it should be displayed as "primary_text" and "secondary_text".
Edit - You may need to look in Settings.apk for the text colors. If they don't work, then look for it in framework-res.apk.
It will be a trial and error thing, so you'll have to test many times.
Sent from my Nexus 5 using Tapatalk
Click to expand...
Click to collapse
Okay
You can make a tutorial explaining better this part of colors and others things to put in OP. Other peoples may also have the same doubt =)

GæxD said:
Okay
You can make a tutorial explaining better this part of colors and others things to put in OP. Other peoples may also have the same doubt =)
Click to expand...
Click to collapse
Thanks, I will be sure to add more info about this when I prepare it later.

I look forward

I have a theme in the works. ?

HI thank you for the guide but i keep getting 'Errorublic symbol style/AppBaseTheme declared here is not defined.' while using android studio. how do i solve this? it wont let me compile my apk.

RealiableCandy4 said:
HI thank you for the guide but i keep getting 'Errorublic symbol style/AppBaseTheme declared here is not defined.' while using android studio. how do i solve this? it wont let me compile my apk.
Click to expand...
Click to collapse
Use eclipse dude, with one click you install your apk on device and test the theme

What version of Eclipse are you guys using? I downloaded the Standard version and it keeps me prompting an error whenever I try to create the public.xml file. Any ideas?

torresfelipe said:
What version of Eclipse are you guys using? I downloaded the Standard version and it keeps me prompting a error whenever I try to create the public.xml file. Any ideas?
Click to expand...
Click to collapse
Eclipse Kepler, is the current one. I don't think you need a specific version.
Sent from my Nexus 5 using Tapatalk

torresfelipe said:
What version of Eclipse are you guys using? I downloaded the Standard version and it keeps me prompting an error whenever I try to create the public.xml file. Any ideas?
Click to expand...
Click to collapse
Eclipse Standard/SDK
Version: Kepler Service Release 2
Build id: 20140224-0627

Thanks guys. I might have done something wrong, but it's working now. I'm using the latest release, 4.4 Luna.

GæxD said:
Use eclipse dude, with one click you install your apk on device and test the theme
Click to expand...
Click to collapse
Thanks for the reply i fixed it by adding
Code:
<style name="AppBaseTheme" parent="android:Theme.Holo.Light.DarkActionBar"></style>
in the styles.xml file

I used Generator to generate png/9.png files of my theme. Problem is that all of files look like this themename_background.png, themename_tab.png etc. (you know what i mean). How to make theme work with that named images? I need to edit some code to audo add this or how? Its not so easy to rename all pngs (takes alot of time)
I just cant do it.Downloaded eclipse with android SDK and aplication wizzard isnt that easy: next, next, next. Also i dont have folders what you said to delete... For me (newbie) its useless guide.. Just trying and still cant do anything because dont know how...
And finally when i will make any project how to build it to be ready to install?

@baciany Check your Pm

@TheArc;
Which APK Decompiler do you use? Do you think that something simple as http://www.decompileandroid.com/ would work?

Related

[TUTORIAL] Selectable Browser User Agent

BACKGROUND
If you use an Android tablet to surf the web, you often face the issue that if you visit a web site that has a mobile version, the server checks your User Agent and says "Android, eh? You're a phone!" - and bumps you to mobile.nfl.com instead of www.nfl.com, which sucks because phone optimized web sites tend to look bad on a 10.1" 1280x800. For example, you want this not this.
So, you can handle that quite easily, you ask the browser to present itself as something else.
CAUSE
Default, my tablet presents itself as...
Mozilla/5.0 (Linux; U; Android 3.1; en-gb; GT-P7500 Build/HMJ37) AppleWebKit/534.13 (KHTML, like Gecko) Version/4.0 Safari/534.13
...and that's when all the web sites say "Android, aha! You're a phone!"
But I can instruct the tablet browser to present itself as anything else, for example...
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_0) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/13.0.782.215 Safari/535.1
...which is handy because it makes all the web sites say "Aha! You're a Chrome browser running on MacOS X 10.7 Lion!", therefore showing me the proper web sites.
ONE SOLUTION
You can do this by decompiling /system/framework/framework-res.apk
Open /res/values/strings.xml, search for the string "web_user_agent" and you'll see this:
<string name="web_user_agent" formatted="false">Mozilla/5.0 (Linux; U; Android %s) AppleWebKit/534.13 (KHTML, like Gecko) Version/4.0 %sSafari/534.13</string>
You can change this blue string into whatever you want.
However, if you do this you're stuck without a proper "android" user agent.
That could be a pain in the ass if you've got an app that relies on a hidden browser window to complete a sign-in authentication, checking the user agent in the process...*cough*NFLGamePassForAndroidTablet*cough*
ANOTHER, MORE ELEGANT, SOLUTION
The more elegant version, however is decompiling /system/app/Browser.apk
Open the file /res/xml/advanced_preferences.xml if you want the menu item in Advanced settings
or open the file /res/xml/general_preferences.xml if you want the menu item in General settings
Insert this…
<ListPreference android:entries="@array/pref_development_ua_choices" android:title="@string/pref_development_uastring" android:key="user_agent" android:defaultValue="0" android:entryValues="@array/pref_development_ua_values" />
... somewhere, between/above/below some other node. I've put it over the ...
<com.android.browser.search.SearchEnginePreference …
... node, giving me this new menu item in Advanced...
... opening this menu ...
Compile it back and there you go.
This fix is basically just shortcutting around the about:debug route by moving the option out of the hidden debug menu, but it's quite convenient to have the option easily accessible without entering debug mode, and you're not stuck without an "Android" user agent.
HOW TO DO THIS, STEP BY STEP.
(mirrored from post #25)
Teaching has never been my strong feat but I'll give it a shot.
Please note:
The "Setup to build" part is for Windows, recreated from memory, and may be inaccurate. I love you guys but I'm not gonna wipe my system and start over just to retrace my steps
For the entire guide, I'm pre-supposing basic computer skills, a rudimentary understanding of ADB, folder structures, file management, text editing and "what do you mean command line??!"
== Set up to build:
If you don't have Java installed, download and install Java from java.com
Download APK Manager 5 and remember to thank the guy.
Place it in a folder in C:\ so you have a directory stucture like this:
C:\apkmanager5
C:\apkmanager5\other
C:\apkmanager5\place-apk-here-for-modding
...etc
C:\apkmanager5 is the home dir for our purposes, so from now on assume we're in C:\apkmanager5 unless I say otherwise.
Run Script.bat
Select 24 "Exit"
(this should create any dirs and logfiles that may be missing)
== Get the required files and prepare for editing
Pull the following .APKs from your phone via ADB or extract them from your ROM.zip to /place-apk-here-for-modding in our homedir. You should make a backup of at least Browser.apk, just in case.
/system/app/Browser.apk
/system/framework/framework-res.apk
/system/framework/twframework-res.apk
Run the following commands from a command prompt in our home dir:
java -jar other/apktool.jar if place-apk-here-for-modding/framework-res.apk
java -jar other/apktool.jar if place-apk-here-for-modding/twframework-res.apk
The command line will return:
I: Framework installed to: C:\Users\((username))\apktool\framework\1.apk
I: Framework installed to: C:\Users\((username))\apktool\framework\2.apk
== Decompile and edit
Run Script.bat
(this will open the apkmanager window)
Enter 19 "Select compression level for apk's"
Enter 0 (compression=0)
Enter 22 "Set current project"
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Select the number for "Browser.apk"
Select 9 "Decompile apk"
It'll say "Decompiling apk" and hang for a while.
Open a file explorer/total commander/whatever on your computer, and go to /projects in our home dir. You'll see that we now have the decompiled Browser.apk in there.
Go to /projects/Browser.apk/res/xml/ and open general_preferences.xml with a text editor. Notepad, Notepad++, Ultraedit or something, not Word
Add the purple code, so the content looks like this:
Code:
<?xml version="1.0" encoding="UTF-8"?>
<PreferenceScreen
xmlns:android="http://schemas.android.com/apk/res/android">
[COLOR="Indigo"][I][B]<ListPreference android:entries="@array/pref_development_ua_choices" android:title="@string/pref_development_uastring" android:key="user_agent" android:defaultValue="0" android:entryValues="@array/pref_development_ua_values" />[/B][/I][/COLOR]
<com.android.browser.BrowserHomepagePreference android:hint="@string/http" android:maxLength="8192" android:title="@string/pref_content_homepage" android:key="homepage" android:inputType="textMultiLine|textUri" />
<PreferenceCategory android:title="@string/pref_general_sync_title">
<Preference android:title="@string/pref_personal_sync_with_chrome" android:key="sync_with_chrome" android:summary="@string/pref_personal_sync_with_chrome_summary" />
</PreferenceCategory>
<PreferenceCategory android:title="@string/pref_general_autofill_title">
<CheckBoxPreference android:title="@string/pref_autofill_enabled" android:key="autofill_enabled" android:summary="@string/pref_autofill_enabled_summary" android:defaultValue="true" />
<PreferenceScreen android:title="@string/pref_autofill_profile_editor" android:key="autofill_profile" android:summary="@string/pref_autofill_profile_editor_summary" android:fragment="com.android.browser.AutoFillSettingsFragment" />
</PreferenceCategory>
</PreferenceScreen>
The purple code shows the UAstring item in General Preferences just above the "Set homepage" item.
== Compile
Go back to the apkmanager window.
Select 11 "Compile apk"
It'll output "Building Apk" and think about it for a while.
Apkmanager will ask, "Is this a system Apk?"
"y" - yes it is.
Then it will ask, "Aside from the signatures, would you like to copy over any additional files that you didn't modify from the original apk in order to ensure least # of errors?"
"y" - yes, you want to do that.
apkmanager will extract those original files and then present you with this screen:
Read that, then I'll explain it
Right. At this point apkmanager has made a copy of the original, compiled Browser.apk files in C:\apkmanager5\keep
As the name "keep" suggests, whatever is in here will be kept and carried on to your new build, so:
For every file that you have changed in /projects/Browser.apk/, you need to delete the counterpart in /keep/.
That way, apkmanager knows to keep your unchanged files unchanged but grab your changed file(s) from /projects/Browser.apk. It may seem like dumb way of doing it but it makes sense that you don't want your computer to compile more than it has to. Compiling takes time and CPU, and...well...the less is done, the less can go wrong.
In this case you edited /projects/Browser.apk/res/xml/general_preferences.xml
So you have to delete /keep/res/xml/general_preferences.xml
AND you have to delete /keep/resources.arsc as well!
Whenever you have changed any XML in an .apk, you also have to delete /keep/resources.arsc when compiling. The apk's resource table is compiled into resources.arsc, so if you dont delete it from keep/, you're gonna keep that and carry it over into your new, modified Browser.apk, and your changes won't come through
Ok, after deleting those two files, you "Press any key to continue ...", all the resources are compressed, and now you have a modified Browser.apk in place-apk-here-for-modding/
Wrap it in a flashable zip and flash it.
("How" is outside the scope of this guide)
As it turns out, this is actually a rather general guide on decompiling, editing and recompiling stuff for honeycomb. You can use the exact same method to edit other apks like, framework-res.apk and SystemUI.apk.
Flashble zip?
Credits to the original devs who found these? (DocRambone,alterbridge86) Otherwise nice guide.
PhantomHacker said:
Credits to the original devs who found these? (DocRambone,alterbridge86) Otherwise nice guide.
Click to expand...
Click to collapse
lol, i love how you give the credits. Phantom.... you are a posterchild!
task650 said:
lol, i love how you give the credits. Phantom.... you are a posterchild!
Click to expand...
Click to collapse
I try.
Sent from my GT-P7510 using Tapatalk
Can someone tell me how to decompile in win7?
Preferably the very easiest way with the easiest tool.
Thanks.
Sent from my GT-P7500 using Tapatalk
PhantomHacker said:
Credits to the original devs who found these? (DocRambone,alterbridge86) Otherwise nice guide.
Click to expand...
Click to collapse
Thanks.
As for credits, I assure you I've figured this out all by myself, so how about I give myself a pat on the back then?
I know that DocRambone has a thread where he supplies flashable zips of the the fix in framework-res.apk/res/values/strings.xml but as far as I can see, he doesn't share how. I asked him in PM but he didn't answer, and all he writes in his thread seems to be "You have to decompile the apk and change some of the xml's and then recompile it again.".
So I had to figure it out myself, and it wasn't exactly hard. So far so good.
The selectable browser version is a fairly straightforward solution, since I'm simply moving an existing setting out in the open from a hidden debug menu, but I cannot for the life of me see any other published info about it.
So again, I haven't published anything I haven't figured out myself, and as I've been unfortunate enough to see my own original creation in someone else's 2 dollar Market app, I'm slightly sensitive to the issue of copying.
If you were trolling, consider me trolled.
Hooolm said:
doesn't share how
Click to expand...
Click to collapse
ot: Its a bit like that these days... It seems a lot harder to gather needed information than it was in WM6.X times.
pkoper said:
ot: Its a bit like that these days... It seems a lot harder to gather needed information than it was in WM6.X times.
Click to expand...
Click to collapse
Yeah, it's just... I've never stolen anything, and I get really pissed spending a couple of hours figuring out something cool, and sharing it with the community then being told "pretty pictures - now credit those who told you how"
Edit..
All good, but I need to learn to do more search before asking, iam sorry
And here is a little offtopic question. Why does it look like this in rootexplorer when iam about to edit the xml file
Sent from my GT-P7510 using xda premium
Hooolm said:
Yeah, it's just... I've never stolen anything, and I get really pissed spending a couple of hours figuring out something cool, and sharing it with the community then being told "pretty pictures - now credit those who told you how"
Click to expand...
Click to collapse
I didn't see an issue with your original post. It would have been different if you had posted Doc's zips as your own creation, but you didn't. Yours was simply a tutorial to teach and explain how such a thing could be done. It's the difference between you showing me a Ferrari Italia and telling me you built it, versus simply telling me HOW they built it.
In any case, you mention Doc never answered your requests. Does anybody know what the heck happened to him? I stopped following his threads when he went MIA.
bd85 said:
Edit..
All good, but I need to learn to do more search before asking, iam sorry
And here is a little offtopic question. Why does it look like this in rootexplorer when iam about to edit the xml file
Sent from my GT-P7510 using xda premium
Click to expand...
Click to collapse
Prob cuz root explorer isnt an xml viewer/editor?
DT3CH said:
Prob cuz root explorer isnt an xml viewer/editor?
Click to expand...
Click to collapse
In can open the andrpidmanifest.Xml that is in browser apk just fine, but when I go to the xml res folder and open the xml there it looks like my earlier Screenshots.
This works but not the xml i want to edit, strange
Sent from my GT-P7510 using xda premium
bd85 said:
In can open the andrpidmanifest.Xml that is in browser apk just fine, but when I go to the xml res folder and open the xml there it looks like my earlier Screenshots.
This works but not the xml i want to edit, strange
Sent from my GT-P7510 using xda premium
Click to expand...
Click to collapse
The resource table is compiled into resources.arsc
You have to decompile the entire .apk to edit the xml and compile again afterwards.
Use something like apkmanager, it's real easy to set up. There's a thread for it in the 10.1 dev forum ;-)
i hope phantomhacker can include this in the 3.2 rom don't really want to try this out myself in case i screw this up
Hooolm said:
The resource table is compiled into resources.arsc
You have to decompile the entire .apk to edit the xml and compile again afterwards.
Use something like apkmanager, it's real easy to set up. There's a thread for it in the 10.1 dev forum ;-)
Click to expand...
Click to collapse
Have you actually done this, does it work? I'm interested, and tried with apkmanager, but the recompiled browser wont work. I think its a problem with my install of apkmanager, but I'm not sure.
blulite said:
Have you actually done this, does it work? I'm interested, and tried with apkmanager, but the recompiled browser wont work. I think its a problem with my install of apkmanager, but I'm not sure.
Click to expand...
Click to collapse
Yeah, I've done it several times. For task650 v6.1, stock XWKH7 and XXKI1.
I decompile it with framework-res.apk and twframework-res.apk installed and compile it back as a system app.
Edit:
I've used this ApkManager 4.9 HC edition without problems
bd85 said:
In can open the andrpidmanifest.Xml that is in browser apk just fine, but when I go to the xml res folder and open the xml there it looks like my earlier Screenshots.
This works but not the xml i want to edit, strange
Sent from my GT-P7510 using xda premium
Click to expand...
Click to collapse
Ahh, weird indeed
decompile works great on my mac, but compile does not work.
Please make your decision: 10
Exception in thread "main" brut.androlib.AndrolibException: brut.directory.PathNotExist: apktool.yml
at brut.androlib.Androlib.readMetaFile(Androlib.java:142)
at brut.androlib.Androlib.build(Androlib.java:159)
at brut.androlib.Androlib.build(Androlib.java:154)
at brut.apktool.Main.cmdBuild(Main.java:174)
at brut.apktool.Main.main(Main.java:59)
Caused by: brut.directory.PathNotExist: apktool.yml
at brut.directory.AbstractDirectory.getFileInput(AbstractDirectory.java:103)
at brut.androlib.Androlib.readMetaFile(Androlib.java:138)
... 4 more
i've also tried this:
http://forum.xda-developers.com/showpost.php?p=7064736&postcount=447
didnt work
My Mac isn't set up to build, I can't help you there.
I'm building on a Windows Server remotely.
How about asking in the apkmanager thread? I'm sure they know more about it

[TEMPLATE][CM9] CM9 Theme Template

THEME TEMPLATE - CM9​
WARNING: MAY CAUSE A SEVERE ADDICTION TO THEMING​I have received numerous requests about theming CM9 from various people, and after directing them all to my home forum where I have a template, a member here (ebs512) suggested that I post the template here because it was so useful.
Some up-and-coming themers have indicated that some of the experienced themers have been reluctant to help them too much with creating new themes so in order to alleviate both the flood of PMs that experienced themers have and the lack of help that the newbies receive, here is a CM9 Template for everyone.
It's currently only for MDPI and HDPI but Anyone can easily add XHDPI compatibility by using my XML generator, see directions at the bottom concerning Density and Compatibility
PREREQUISITES: YOU MUST HAVE APKTOOL INSTALLED
There are many, many tutorials on how to install apktool, just google it.
Directions:
1. Download the template from Mediafire (updated 7/20/2012)
2. Unzip the code to a convenient location
3. Edit the images, change colors, do everything you want to it
4. Choose the Compatibility you want by following the directions of your choice (See below 4.1-4.4)
5. Open up your command prompt
6. Enter the following command:
Code:
apktool b location_of_the_source_code_folder
and it will build.
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
7. Don't forget to sign the apk before installing it
8. Publish your theme here or on Google Play
DISCLAIMER: I am not responsible for negative comments you receive if you create a terrible theme. Everyone has full permission to create themes off this template and distribute them (if you plan on creating paid themes, please also provide a free download in the spirit of open source).
DIRECTIONS FOR XHDPI COMPATIBILITY​Since you are using apktool to build your theme, there are inherent problems that are unfixable. The problem lies in the location of the Preview.png that shows up when you open up the theme chooser. Leaving it out will let your theme be compatible with all densities, but you will not be able to show a preview.
4.1 To make compatible with HDPI and MDPI (and LDPI)
1. Install a framework-res.apk from a Samsung Galaxy S2 CM9 ROM by downloading the apk and typing:
Code:
apktool if location_of_SGS2_ICS_framework\framework-res.apk
2. Make sure you have HDPI and MDPI folders in the theme folder with the proper images
3. Place the Preview.png in the XHDPI folder, that's right, the XHDPI folder
4. Compile
4.2 To make compatible with MDPI only
1. Delete the contents of the HDPI folder
2. Move the Preview.png from the XHDPI folder (its default location) to the HDPI folder
3. Compile
4.3 To make compatible with XHDPI and HDPI
1. Delete the MDPI Folder
2. Install an XHDPI framework-res.apk from an XHDPI CM9 ROM (Like the Galaxy Nexus):
Code:
apktool if location_of_XHDPI_framework\framework-res.apk
3. Add Images for XHDPI to the XHDPI Folder (make sure they are named correctly)
4. Move the Preview.png from drawable-XHDPI to the drawable folder
5. Compile
4.4 To make compatible with everything
1. Open up the AndroidManifest.xml and add a backslash "\" before "@drawable/preview"
2. Add XHDPI images
3. Install an XHDPI framework-res.apk from an XHDPI CM9 ROM (Like the Galaxy Nexus):
Code:
apktool if location_of_XHDPI_framework\framework-res.apk
4. Compile
More information on how to theme certain elements is located in this wonderful guide by xda member nhnt11
I do not have a donation button, but if you feel like it, purchase one of my CM9 Themes (available on several forums for free) off google play
Please visit the original thread on my home forum also.
And... if you are really stuck and need to talk to me, send me a PM or hit me up on gtalk at [email protected]​
thanks! u can make THEME TEMPLATE - CM7
sr! is my english so bad
Thanks for this. I'm sure it will be of tremendous help to many of us.
x-dira said:
thanks! u can make THEME TEMPLATE - CM7
sr! is my english so bad
Click to expand...
Click to collapse
If you're asking me to make a CM7 template, there isn't a need because there are already templates for CM7 like the cyanbread theme.
This thread should be stickied!
Sent from my Nexus S 4G using Tapatalk 2
ebs512 said:
This thread should be stickied!
Sent from my Nexus S 4G using Tapatalk 2
Click to expand...
Click to collapse
dumps some strawberry syrup all over this thread
there now its real sticky ..lmao
just kidding around
Thank you anthony for making this
Updated OP with directions about making your theme compatible with different screen densities. PLEASE READ those directions, because if you don't you will have problems applying it. Take special note about installing the proper framework-res.apk with apktool.
Thanks for this! Do you have any tips in regards to batch editing images for mdpi? It's going to take me a while to get through the 2587 images in the hdpi so when I've done it would be nice if I could just run a handy tool of some sort to re-size them all for mdpi/xhdpi.
XperienceD said:
Thanks for this! Do you have any tips in regards to batch editing images for mdpi? It's going to take me a while to get through the 2587 images in the hdpi so when I've done it would be nice if I could just run a handy tool of some sort to re-size them all for mdpi/xhdpi.
Click to expand...
Click to collapse
Batch resizing is a bad idea with all the .9.pngs, but if you want you can batch resize non-.9's. Batch recoloring is very simple with Photoshop (which I don't have).I use GIMP to batch edit. There are a couple plugins for it, but I use a script and edit using the command prompt. If you have Photoshop though, use that, it costs a lot because its the best. //Advice
anthonycr said:
Batch resizing is a bad idea with all the .9.pngs, but if you want you can batch resize non-.9's. Batch recoloring is very simple with Photoshop (which I don't have).I use GIMP to batch edit. There are a couple plugins for it, but I use a script and edit using the command prompt. If you have Photoshop though, use that, it costs a lot because its the best. //Advice
Click to expand...
Click to collapse
I'll just do what i usually do and go through one by one where I don't already have an image to replace and batch what I can. I do use PS as my main editor along with Paint.Net for certain things.
Thanks.
XperienceD said:
I'll just do what i usually do and go through one by one where I don't already have an image to replace and batch what I can. I do use PS as my main editor along with Paint.Net for certain things.
Thanks.
Click to expand...
Click to collapse
Get adobe fireworks for batch editing if you just want to change the color...otherwise if you use gimp get a plugin called bimp (batch image manipulation plugin)
Sent from my Nexus S 4G using Tapatalk 2
Could anyone please kindly help upload the template to another file host service?
For some reasons I was unable to download it from mediafire.
Thanks!
I updated the theme template. CHECK the FIRST post.
CHANGE LOG:
* Themed the volume sliders and other sliders
* Fixed the problems with inverted apps not showing up correctly (most of them)
* Removed some unnecessary images from the template (cuts down on size)
Enjoy. I'm glad to see a bunch of you using this already, glad it's helping
Do you know how to fix missing assets? I know I can ignore it, but it's just annoying. btw, those lots of redirections at redirections.xml are really needed? I've never seen any theme like this.
4.4 To make compatible with everything
1. Open up the AndroidManifest.xml and add a backslash "\" before "drawable\preview.png"
This is confusing because preview.png isn't in the AndroidManifest.xml.
The correction is "\" before "@drawable/preview"
There is another thread with the how to make a T-mobile theme which have more detail what can be themed, see link. A reference to the post is helpful for beginners.
Please update the first post.
Thanks for posting.
---------- Post added at 07:22 AM ---------- Previous post was at 07:17 AM ----------
marcellocord said:
Do you know how to fix missing assets? I know I can ignore it, but it's just annoying. btw, those lots of redirections at redirections.xml are really needed? I've never seen any theme like this.
Click to expand...
Click to collapse
The redirections aren't required when you delete the following line from the AndroidManifest.xml
<meta-data android:name="com.tmobile.theme.redirections" android:resource="@xml/redirections" />
how to change the white settings font color..what xml to edit?
Thanks waterpolo, I completely missed that.
Thank u very mch. A much needed help.
ssettor said:
how to change the white settings font color..what xml to edit?
Click to expand...
Click to collapse
Do you mean the system white color?
\\res\values\colors.xml
<color name="white">#ffffffff</color>

[Guide] Porting CM10/.1 themes to XTheme

{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Want to port CM11 themes? Go here:
CMX- Port CM11 themes in one click.
I will update the information whenever time allows.
Please feel free to contribute or discuss.
In this first post I'm going to try and explain what XTheme and the theme apk's are and how they work. Why? Because you'll have a better understanding of the workings, this will hopefully enable better self sufficiency.
In the second post i'll describe how to set up an environment to port themes and the process of how to port CM 10 themes to XTheme.
I'm going to assume you know nothing about anything to try and cover everything. I myself don't know everything, but what i do know I will try to share.
I'm going to try and keep this as basic as possible so anyone with no knowledge can follow along.
There are already some brilliant guides out there that will help if you read them, so i will link to them instead of regurgitating info from them.
[Guide]T-mobile theme engine.
[Tool]XML generator.
[Guide]How to theme CM10.1.
CM 10 theme mega thread.
[How to] XMLGenerator and .bat script
Knowledge is power!
Click to expand...
Click to collapse
You can find the XTheme thread here containing install instructions, compatible devices and more.
Basically it performs in a similar manner to the theme chooser engine for CM based ROM's... but for ROM bases other than just CM. Until now-18/04/13, the theme chooser engine was restricted to CM based ROM's. XTheme makes it possible to theme stock ROM's.
Click to expand...
Click to collapse
The theme chooser engine allows you to choose a theme and apply it whilst your device is turned on without overwriting your stock images (requires a reboot to see full changes).
This is opposed to a different method of theming, zip flashing or Metamorphing. These methods overwrites either whole apk's or just the relevant images depending on the method you use.
The beauty of the theme chooser is if you decide to change theme or remove it, there is no fallout from the theme that was applied, so all the images are returned back to stock. This isn't really possible through Metamorph or zip flashing unless you use VRTheme or the Universal theme zip which creates a backup. Even so i've found this doesn't work 100%. And restoring your original images through Metamorph and zip flashing can be a painful and tiresome task.
The theme chooser works by redirecting images from inside a theme apk, provided that the relevant images and redirection are present.
If the images or redirections are not present for battery icons for example, then the battery icons will not be themed.
A simple and clean method to theme.
Click to expand...
Click to collapse
Now you know how the engine works we'll talk about the theme apk.
Within the apk is a folder named "res", this contains all the images and xml files that is used within the theme.
Inside the "res" directory are a number folders. Depending on the theme you are porting/creating, some folders will not be used. The folders are mainly self explanatory and these include:
anim ~Controls animations, e.g. screen fades, rotations etc.
color ~xmls control colors used in the theme.
drawable ~Contains xmls that control drawables.
drawable-*dpi ~Contains theme images and possibly xml's.
layout ~Contains xml's that controls the layout values of elements in the theme.
mipmap-*dpi ~Houses "ic_launcher" icons.
values ~Contains xmls including strings, styles, drawables which we will discuss later.
xml ~Contains the redirection xmls. This is where the magic happens.
You can find more in depth details here:
http://developer.android.com/guide/topics/resources/providing-resources.html
If you are unsure where to house elements when adding to your theme, simply look inside the original apk.
For example if i want to theme the icon of Gmail, i would extract the Gmail apk and search for the location of the launcher icon. This is located in mipmap-*dpi, so i would add it to the mipmap-*dpi directory in my theme with the relevant redirections.
Click to expand...
Click to collapse
The redirections xml diverts the original package resources to the theme resources.
Here's a little workflow for changing the Gmail launcher icon.
This is achieved by adding the relevant syntax to the redirection.xml like so:
Code:
<?xml version="1.0" encoding="utf-8"?>
<theme-redirections
xmlns:android="http://schemas.android.com/apk/res/android" xmlns:pluto="http://www.w3.org/2001/pluto.html">
[COLOR=Red]<package-redirections android:name="[COLOR=RoyalBlue]com.google.android.gm[/COLOR]" android:resource="@xml/[COLOR=SeaGreen]com_google_android_gm[/COLOR]" android:minSdkVersion="16" />[/COLOR]
</theme-redirections>
I have highlighted the package redirection above to break it down.
Red= Package redirection syntax.
Blue= Original package name. Found in the "AndroidManifest"
Green= Redirection package name. you can call this anything but i strongly suggest you stick with the original and change "." to "_" as above.
This has told the engine to divert "com.google.android.gm" (Gmail.apk) to use the resources defined in "com_google_android_gm".xml in the theme xml folder.
Now we need to create an xml inside the xml folder named "com_google_android_gm".
Within this xml we add the correct syntax for the resources to be used:
Code:
<?xml version="1.0" encoding="utf-8"?>
<resources>
[COLOR=Red]<item name="[COLOR=Blue]mipmap/ic_launcher_mail[/COLOR]">@[COLOR=SeaGreen]mipmap/com_google_android_gm_ic_launcher_mail[/COLOR]</item>[/COLOR]
</resources>
Red= Resource redirection syntax.
Blue= Original directory and resource
Green= Redirection directory and resource
This is telling the engine to display "com_google_android_gm_ic_launcher_mail".png located in the mipmap-*dpi directory within the theme apk.
Now we add the "com_google_android_gm_ic_launcher_mail".png into the mipmap-*dpi directory to complete the redirection process.
You can see why i suggest to keep the redirection package name the same. it keeps a consistency that's easy to follow.
Click to expand...
Click to collapse
Time Taken:
Setting up 10 minutes
Porting 10 minutes
Difficulty:
Xtheme Engine themes. Most themes in this thread are for Sony devices. To enable these to work fully on other OEM devices, they require proper redirections.
[THEMES]Xposed theme Engine.
[PORT]CM to XThemeEngine.
[[XTHEMES]] THEMES PLANET [4.3 supported].
Port CM Themes to Xtheme Engine in One Click!
Post any other threads here and i will add them to the above list.
Click to expand...
Click to collapse
Now we know the basics of how the engine and redirections work we can start creating/porting some themes.
We need to gather some tools for the process:
Java Link
ApkManager/Multitool Link
CM10 theme to port Take your pick.
SampleTheme.apk Link at bottom of the page.
Notepad++ Link
7zip Link
Weapon of choice- i chose a beverage with alcoholic content. Link
Java.
Download, install and add bin path to your environment variables.
Windows 7.
Select Computer from the Start menu
Choose System Properties from the context menu
Click Advanced system settings > Advanced tab
Click on Environment Variables, under System Variables, click "new".
In the "variable name" field enter JAVA_HOME
In the "variable value" field enter the "bin" location from the java folder.
My location is "C:\Program Files\Java\jre7\bin"
Reboot.
Open a cmd window and type java. If you added the path correctly you will receive an help menu. If not try to add the path again.
For more help see below or use Google.
http://www.java.com/en/download/help/path.xml
ApkManager/Multitool.
Extract and read the "README"
You can also follow instructions here:
http://forum.xda-developers.com/showthread.php?t=1310151
Click to expand...
Click to collapse
Alternative method. Thanks pier10.
Firstly let me say. If you do not have a redirections.xml in the CM theme xml folder you will need to create one.
See this post for details.
Once we have our environment setup we can get started.
XTheme creator ruqqq has described how to port CM themes in his thread but ill try to expand it.
http://forum.xda-developers.com/showpost.php?p=40428425&postcount=2
1 .Run the setup.bat and select option 3 to create directories.
2. Place your CM10 and SampleTheme.apk's in "place-apk-here-for-modding". Sample theme link. CM10 theme link.
3. Run script.bat and choose option 24 to set project.
4. Select your CM 10 theme apk and choose option 9 to decompile.
5. Repeat the process with the sample theme
6. Your now presented with 2 output folders in "projects" with the same name as the apk.
7. Enter "projects/SampleTheme.apk" and delete the "res" folder.
8. Goto the CM10 theme in projects and copy the "res" folder across into the SampleTheme.apk folder.
9. Open both "AndroidManifest.xml" with notepad++
10. In the SampleTheme AndroidManifest change
Code:
package="[COLOR=Red]sg.ruqqq.theme.SampleTheme[/COLOR]"
with the package name from the CM10 AndroidManifest. Add an X or Xtheme to the end of the package name to differentiate it from the original.
Code:
package="sg.ruqqq.theme.SampleTheme"
Becomes
Code:
package="com.vicino.theme.honeycombl.xtheme"
Or
Code:
package="com.vicino.theme.honeycomb.x"
We can also reflect the change in res/values/strings.xml
Code:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">HoneycombTheme</string>
<string name="theme_name">HoneycombTheme</string>
<string name="style_appearance_name">HoneycombTheme</string>
<string name="author">vicino</string>
<string name="copyright">vicino</string>
</resources>
Becomes
Code:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">HoneycombTheme X</string>
<string name="theme_name">HoneycombTheme X</string>
<string name="style_appearance_name">HoneycombTheme</string>
<string name="author">vicino</string>
<string name="copyright">vicino</string>
</resources>
11. Check If the theme contains a redirections.xml (res/xml/redirections.xml), if it doesn't you must create one. See the post above headed "redirections.xml" orsee this post for details on editing. You should have a line of code for each package xml file in the xml folder.
This applies to every ROM. If the theme does not contain a redirections.xml it will not redirect resources.
Delete any unused lines of code.
If you are using a "stock" ROM, example TouchWiz(Samsung), Sense(HTC), Semc(Sony), open up "android.xml" in res/xml and add redirections for your OEM images.
For Sony based ROM's you can find my redirections below. For other ROM's you will have to create them or find them
http://forum.xda-developers.com/showpost.php?p=40024969&postcount=5
TIP:
My redirections syntax refer to framework images as "framework_res", if the theme you are porting uses "frameworks_res" for example follow this:
Open up the android xml with NotePad ++.
Click the search tab at the top and select replace.
In the field "Find what" enter @drawable/framework_res.
In the field "Replace with" enter @drawable/frameworks_res.
Click replace all, save and close.
12. Compile the project by selecting 12. When prompted select option 2.
13. You will recieve a "unsignedSampleTheme.apk" in the "place-apk-here-for-modding" folder. Select option 13 to sign the apk.
14. You now have a "signedSampleTheme.apk" in "place-apk-here-for-modding", you can rename this to the CM10 theme name.
15. Place the apk on your device, install, apply and reboot.
Click to expand...
Click to collapse
@ruqqq for the XTheme engine.
CM team for the Theme chooser engine.
All the authors of the guides and posts.
@MrDSL for helping me out with Theme Chooser.
@mcsqwizzys98, @Rycon33, @josephnero, @peetr_ and many others over on the Xperia T forum (sorry if i forgot anyone).
@Brut.all, @iBotPeaches, @JesusFreke, @Daneshm90, and @raziel23x for apktool, smali/ baksmali, apkManager/multiTool,
@rovo89 and @Tungstwenty for making this possible with Xposed framework.
@vicino for using Honeycomb theme as an example.
Everyone else who they credited.
Click to expand...
Click to collapse
Q.Why does the ported theme not look 100% as the original theme?
A.
ruqqq said:
There are 2 reason for this. Firstly, as stated in the previous post, styles.xml is not working for XThemeEngine. Hence, the ported themes would not work 100%. For better success, port a theme which is closer to Holo styles (dark background, bright text). Second reason, which is the most common reason, is that the theme is made for CM10. CM10 is very close to AOSP while your device which is running stock rom only retain some parts of AOSP. The theme need to be properly ported (analyze your stock rom frameworks and redirect the proper files in your ported theme etc.) to fully support your device.
Click to expand...
Click to collapse
Q. My theme is not recognized.
A. Make sure you have permissions in the android.manifest.xml.
Code:
<uses-permission android:name="sg.ruqqq.XThemeEngine.permission.SYSTEM_THEME" />
Q. Nothing is themed!?.
A. You must have a "redirections.xml" and package.xml's in the "res/xml" folder
If you plan on releasing any ported themes then ask the author of the theme for permission and give credits and link back to their thread. Not only is this good community manners, it's XDA rules.
XDA rule 12:
12. Using the work of others.
If you are developing something that is based on the work of another Member, you MUST first seek their permission, and you must give credit to the member whose work you used. If a dispute occurs about who developed / created a piece of work, first try to settle the matter by private message and NOT in open forum. If this fails then you may contact a moderator with clear evidence that the work was created by you.
Convincing evidence will result in copied work being removed. If there is no clear evidence you created the work then in the spirit of sharing all work will remain posted on the forums.
As an addition, developers have the right to hold exclusivity over their work for as long as it is deemed necessary by the dev or freely share it. However, if the work is claimed as exclusive, it must remain as such. No selective sharing will be allowed (ie allowing certain people to use it and not others). Should the dev decide to start sharing the work with others, the work automatically becomes fair game for all to use.
In regards to permissions, same rules remain for this but if permission was already given, unless there is a very valid reason, it cannot be revoked (same applies to major updates on the work). Under that same premise, permissions cannot be denied unless the work is exclusive or under severe circumstances.
In plain English: If you want to keep your work exclusive, go for it. However, if you are going to share your work, do it fairly.
These rules apply to all software posted on XDA (including but not limited to ROMs, RUUs, apps, games, kernels, themes, icons, etc) unless that software comes with a license that waives these rules.
Click to expand...
Click to collapse
Thanks to @vicino, as i used his "Honeycomb Lite Theme" as an example.
Awesome guide it will help many people!!!
Sent from my LT30p using Tapatalk 4 Beta
you never fail to amaze mate.thank you
very nice guide dully:good:
it's very comprehensible
i'd like to add some redirections for Xperia(coz Sony always do some funny funny things )
at android.xml:
- for screenshot dialog image
Code:
<item name="drawable/semc_ic_dialog_screenshot">@drawable/frameworks_res_ic_lock_screenshot</item>
at com_android_systemui.xml:
- for data H+
Code:
<item name="drawable/stat_sys_data_connected_h_plus">@drawable/com_android_systemui_stat_sys_data_connected_hp</item>
<item name="drawable/stat_sys_data_fully_connected_h_plus">@drawable/com_android_systemui_stat_sys_data_fully_connected_hp</item>
Rycon and his hplus icon
Sent from my LT30p using Tapatalk 4 Beta
mcsqwizzys98 said:
Rycon and his hplus icon
Sent from my LT30p using Tapatalk 4 Beta
Click to expand...
Click to collapse
hahaha, true mate, as you know i'm mostly on mobile
i'll add some more later, those i can remember
EDIT: Another option for ApkManager is TickleMyAndroid tool for de/recompiling, signing apks.
EDIT2: If you want to have a nice Sony accent theme that can blend well to any ported themes, try to mod an existing Sony accent theme. I personally used white accent(ccffffff) so the default toggles, panel clock, etc won't look out of place when using any ported XTheme theme.
Cheers fellas.:good: I've updated the guide to use the SampleTheme method as described in the XTheme thread. It seems to be less temperamental.
i port a theme flowing your guide
Bt when i click apply its shows failed please help
i m using xtheme engine beta5
only i skip step 10 is it mandatory?
Drockk_Xm said:
i port a theme flowing your guide
Bt when i click apply its shows failed please help
i m using xtheme engine beta5
only i skip step 10 is it mandatory?
Click to expand...
Click to collapse
Only if your using an OEM ROM and want the theme to work fully on your device.
Can you post your AndroidManifest.xml or post the contents and wrap code tags around it, thanks.
dully79 said:
Only if your using an OEM ROM and want the theme to work fully on your device.
Can you post your AndroidManifest.xml or post the contents and wrap code tags around it, thanks.
Click to expand...
Click to collapse
AndroidManifest.xml
PHP:
<?xml version="1.0" encoding="utf-8"?>
<manifest android:hasCode="false" package="com.gekn.theme.Sense5.xtheme"
xmlns:android="http://schemas.android.com/apk/res/android" xmlns:pluto="http://www.w3.org/2001/pluto.html">
<uses-permission android:name="sg.ruqqq.XThemeEngine.permission.SYSTEM_THEME" />
<application android:label="@string/app_name" android:icon="@drawable/icon" />
</manifest>
Drockk_Xm said:
AndroidManifest.xml
PHP:
<?xml version="1.0" encoding="utf-8"?>
<manifest android:hasCode="false" package="com.gekn.theme.Sense5.xtheme"
xmlns:android="http://schemas.android.com/apk/res/android" xmlns:pluto="http://www.w3.org/2001/pluto.html">
<uses-permission android:name="sg.ruqqq.XThemeEngine.permission.SYSTEM_THEME" />
<application android:label="@string/app_name" android:icon="@drawable/icon" />
</manifest>
Click to expand...
Click to collapse
Ok your manifest is fine, can you send me your apk or link to the original?
dully79 said:
Ok your manifest is fine, can you send me your apk or link to the original?
Click to expand...
Click to collapse
apk link
https://www.dropbox.com/s/jvd5sill84i8ga8/Sense 5 CM10.1 signed.apk
apk signed via ZipSigner
and got .zip format
then rename the extension zip to apk
Drockk_Xm said:
apk link
https://www.dropbox.com/s/jvd5sill84i8ga8/Sense%205%20CM10.1%20signed.apk
apk signed via ZipSigner
and got .zip format
then rename the extension zip to apk
Click to expand...
Click to collapse
There is no redirections.xml in res/xml.
Edit: After looking at it more that theme isnt very well constructed.
None of the images have package names designated to them, so it's a bit of a free for all inside res/drawable-*dpi.
Now that I have my Optimus pro g and have been working with this more I gotta say its more frustrating then anything..
Metamorph using zipthemer from the market seems like a better alternative.
Stuff that should work and clearly works in other areas just randomly doesn't work for no known reason.
Very fustrating..
MrDSL said:
Now that I have my Optimus pro g and have been working with this more I gotta say its more frustrating then anything..
Metamorph using zipthemer from the market seems like a better alternative.
Stuff that should work and clearly works in other areas just randomly doesn't work for no known reason.
Very fustrating..
Click to expand...
Click to collapse
Without a doubt. Now you know why I feel like I'm banging my head against a wall.
You definitely need to hide anything that is fragile and within arms reach when messing with xtheme.
dully79 said:
There is no redirections.xml in res/xml.
Edit: After looking at it more that theme isnt very well constructed.
None of the images have package names designated to them, so it's a bit of a free for all inside res/drawable-*dpi.
Click to expand...
Click to collapse
here is my apk link bro
http://d-h.st/9fQ
I have added redirections. Xml as well n added permissions as well then wat is d problem
Sent from my Galaxy GT-I9500 using xda premium
harisaduelite said:
here is my apk link bro
http://d-h.st/9fQ
I have added redirections. Xml as well n added permissions as well then wat is d problem
Sent from my Galaxy GT-I9500 using xda premium
Click to expand...
Click to collapse
Why don't you read the quide and figure it out like most people this honestly isn't really that hard at all you make redirections delete the public file and make sure yo add device specific redirections in android XML and your done-_-
Sent from my LT30p using Tapatalk 4 Beta
harisaduelite said:
here is my apk link bro
http://d-h.st/9fQ
I have added redirections. Xml as well n added permissions as well then wat is d problem
Sent from my Galaxy GT-I9500 using xda premium
Click to expand...
Click to collapse
You've quoted a post that WASN'T directed at you. It was for Drockk. And ive told you, your AndroidManifest is messed up. Use the one from the SampleTheme.apk just like the guide describes and i guarantee it will work.

[TX] Holo Theme

Just sharing my own setup here, in case others are also still interested in the good old Holo look.
EDIT: Added another version, Holo Theme with Sony Quicksettings.
It also has center-clock and 1%-step circle battery.
Downloads are still on the same shared folder. More info and screenies at this post.
Warning: This is ONLY applicable for DE-ODEX Rom!
What is themed on this setup?
- framework-res.apk (pretty much all[or most] the Sony Semc images are not rendered anymore and replaced with Holo images)
- SystemUI.apk (signal images)
- Settings.apk (icon images)
- framework.jar (for us to de/recompile framework-res.apk properly, also this has the Honami Home mod integrated)
- services.jar (also just for compatibility with Honami Home mod)
Screenies:
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Download:
Holo Theme for TX
***
Just one caveat though, the notification panel clock and toggles are not themed(I think it's tied in smali).
As a temporary workaround, I edited the Sony Sapphire accent theme, and make it more holo #33b5e5.
Choose it in setting-display-theme-Sapphire after you flashed the theme's zip.
***
thanks to:
@dully79 for all the many knowledge that he shared with me in modding
@mcsqwizzys98 for the same reason as well
@niaboc79 for his Honami Home framework.jar/services.jar
@erorcun for his tut on properly de/recompiling Sony framework without having bootloop
BTW, this mod is XTheme-friendly, that's the reason I still made it as my base.
Switch buttons and backgrounds are changed properly in xTheme just to name a few.
You will notice the difference when you try to flash any XTheme themes, even those without any Sony redirections.
EDIT:
The below version is the one I'm actually personaly using to be much more friendly with xTheme themes
I just made the dialog title white and status bar clock-color white so that they will look neutral and not out of place whenever l apply any xTheme themes.
I did that because they can't be themed in xTheme.
Optional version(more xTheme-friendly, also the status bar clock is at center):
http://www.mediafire.com/folder/u06n5h1qui9he/A_version_more_xTheme_friendly
And ofc, I edited Xperia accent theme to white as well to make the toggles white also.
Select it in settings-display-Theme-Xperia after flashing the zip.
Below is a sample when I apply an xTheme theme:
I know this is for the TX but they're so similar, do you think it'd work on the T?
Not sure Matt, coz some ID 's may be different, that's what I encountered on one of the V mod(although that's for V).
Try it mate, anyway the universal flasher tool will automatically create a backup undo zip also.
Tapatalked from my bricked TX
good to see you are still doing good job mate
Rycon33 said:
Not sure Matt, coz some ID 's may be different, that's what I encountered on one of the V mod(although that's for V).
Try it mate, anyway the universal flasher tool will automatically create a backup undo zip also.
Tapatalked from my bricked TX
Click to expand...
Click to collapse
Yeah, I wouldn't be surprised if it failed, I'll try anyway but make a backup.
I'm a big fan of the holo theme! used it back when skyfri still supported it but it got dropped and is incompatible with later JB versions.
I'll let you know how it works out, good work on this bro!
Generally it was fine on my Xperia T,
a few minor problems, the power menu was pretty screwed up! It looked like this:
I did some editing in the framework and it now looks like this:
I know under airplane mode it still says 'silent mode' but it's a minor detail and not that much of an issue for me personally. I couldn't figure how to change it anyway, may take a look another time!
One last slight minor detail: upon boot it say's 'pin operation failed' in the top right for a few seconds, but then turns to 'emergency calls only' and finally to 'EE' (as that's my network). so once again a very small minor issue but that's expected when cross flashing!
Other than this, it seems to all work fine on the T, haven't found anything else! So I'm keeping it on my device, love the holo theme!
Here is my framework-res: http://www.mediafire.com/?ijo0oz3b0tro679
This makes the power menu as seen above for the Xperia T! feel free to put it in the OP if you want so other T users can grab it easily
Matt, they are only IDs for airplanemode etc, that is being called in smali, should be easy to get a fix
I wonder why Sony really gave different IDs for those few minor things only LoL
Good:good: to know that it's somewhat working on T, I'll try or anybody with T can help me hunt those IDs
Rycon33 said:
Matt, they are only IDs for airplanemode etc, that is being called in smali, should be easy to get a fix
I wonder why Sony really gave different IDs for those few minor things only LoL
Good:good: to know that it's somewhat working on T, I'll try or anybody with T can help me hunt those IDs
Click to expand...
Click to collapse
I'll try have a look later, I did a lazy fix and changed the strings rather than the ids
matt4321 said:
I'll try have a look later, I did a lazy fix and changed the strings rather than the ids
Click to expand...
Click to collapse
I guess the best way is to see the original IDs of those images in public.xml, hunt them in smali, then replace with the new IDs.
I think the hard part is hunting down which smali files they are used and called.
@Rycon33: can you make one version with lidroid status bar?
charmidz said:
@Rycon33: can you make one version with lidroid status bar?
Click to expand...
Click to collapse
I've tried mate, believe me, many times, but for some reason it's way out of my comprehension LoL
The one I tried before is from Leo's SystemUI(based on peetr's mod) but Leo also has so many mods integrated into it that I don't personally like so I didn't stick to it.
To others that knows it, feel FREE to use this mod as your base for integrating other mods as well.
Just share it here if possible once finished LoL, hehehe.
Yep!
hope someone makes it :good:
Thanks for the metion Rycoooon and nice work
To track the id it should be quite simple.
Obtain the id from public.xml.
Open all smali files in notepad++.
Click search>find enter the id and click "find all in all opened documents".
If you dont use notepad++...why? It's the shizz!
I'd help look but i've just finished a 14 hour shift and i cannot be bothered to stare at a screen.
I'll do it some time soon,
Just not motivated enough to do it now as my temp fix looks fine.
Sent from my LT30p using Tapatalk 4
How do the ids not match if your flashing Rycons mod with his framework-res and framework-jar, surely they should match against each other?
What did you flash matt?
dully79 said:
How do the ids not match if your flashing Rycons mod with his framework-res and framework-jar, surely they should match against each other?
What did you flash matt?
Click to expand...
Click to collapse
I flashed the whole package! so had his systemui, settings, framework-res, the jars. all of it. but as my post on the previous screen shows something weird was up. so just edited some strings as a temp fix
matt4321 said:
I flashed the whole package! so had his systemui, settings, framework-res, the jars. all of it. but as my post on the previous screen shows something weird was up. so just edited some strings as a temp fix
Click to expand...
Click to collapse
I'm not particularly clued up with strings and smali etc, but you'd think if you flashed the whole package the ids would correlate with one another.
Ive just decompiled and baksmalied the apk and jar file and this is what i get.
Rycons:
I serached strings.xml- "Do you want to reboot into safe mode?" = <string name="reboot_safemode_confirm"
Then i serached public.xml for reboot_safemode_confirm =
Code:
<public type="string" name="reboot_safemode_confirm" id="[COLOR="Red"]0x0104018e[/COLOR]" />
I opened up deodexed T framework-res public and searched 0x0104018e = "global_action_power_off"
That tells me that Rycons framework apk/jar didnt take.
You could try swapping the public.xmls between your framework-res.apk and Rycons to make the ids match up with the framework.jar
dully79 said:
I'm not particularly clued up with strings and smali etc, but you'd think if you flashed the whole package the ids would correlate with one another.
Ive just decompiled and baksmalied the apk and jar file and this is what i get.
Rycons:
I serached strings.xml- "Do you want to reboot into safe mode?" = <string name="reboot_safemode_confirm"
Then i serached public.xml for reboot_safemode_confirm =
Code:
<public type="string" name="reboot_safemode_confirm" id="[COLOR="Red"]0x0104018e[/COLOR]" />
I opened up deodexed T framework-res public and searched 0x0104018e = "global_action_power_off"
That tells me that Rycons framework apk/jar didnt take.
You could try swapping the public.xmls between your framework-res.apk and Rycons to make the ids match up with the framework.jar
Click to expand...
Click to collapse
I'm pretty sure it did take, no error in cwm and the theme is all in place. I don't know why the id's mismatch. I'll look into it tomorrow, bit late to start now, it could take a while
I got another idea Matt, can you try this,
Decompile my framework-res.apk and get the following:
drawable folder
drawable-xhdpi folder
styles.xml
drawables.xml
Then copy it and paste to your own framework-res.apk and then recompile.

[guide][wip]all you need to learn about an apk

{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Let's start by know what's an APK
Android application package (APK) is the package file format used to distribute and install application software and middleware onto Google's Android operating system, and certain other operating systems, such as Blackberry 10 Devices with the OS version 10.2.1 or higher.
Read more here:http://en.wikipedia.org/wiki/Android_application_package
XDA PORTAL POST:http://www.xda-developers.com/apk-files-modifications/
What's inside an APK
AndroidManifest.xml It contains the valuable information for an application to function well.The permission it takes from the android system,the libraries it requires for proper functioning ,the minimum sdk version/api level/or in general the android version required and much more.
res(Resources) folder The most important folder inside an apk .It contains the all the things that an apk has.It got the xml codes which tell about diffrent sizes of things in apk the different colors ,labels ,icons ect.
lib folder this may or mayn't be present .It contains the few library files required especially for the application to work properly
assets folder
an odex apk also contains class.dex the java part of the apk.
smali folder the java part of the apk in deodexed apk
How to Re-Engineer or Decompile &Recompile an APK
There are many tools that you will find floating over the internet for this very purpose but actually the main tool over which these tools have been built is the APKTOOL .
check out:code.google.com/p/android-apktool/
Install your apktool.
I'll recommend you to install the Android SDK or use my reduced sdk in the attachments below (if you use windows)
Once you have installed the apktool.(I'm considering you have completly installed and configured java well)It's time to get started!
So we are going to pull the framework files from the system.
type in command prompt (cd it to the folder containing adb i.e. android-sdk/platform-tools or my the reduced sdk )
abd pull /system/framework/framework-res.apk framework
Click to expand...
Click to collapse
pull all the framework files from system/framework (only the apks) and systemui from the app folder .
Now let's install the framework
Open command prompt cd to the folder containing the pulled framework and type:-
apktool if framework-res.apk
Click to expand...
Click to collapse
Similarly install all resources.
Now let's decompile the an APK.
if you have an APK thats nice but if you don't let's pull some form the system
adb pull /system/app/ applications
Click to expand...
Click to collapse
Lets say we are decompiling an APK names xxx.apk
Open cmd ,cd to the folder containg the apk and type
apktool d xxx.apk xxx
Click to expand...
Click to collapse
let's recompile the apk back
cd the cmd to the folder containing the decompile apk i.e. if /a/b/c contains folder xxx i.e. the decompiled apk then cd to a/b/c.
type
apktool b xxx xxx_new.apk
Click to expand...
Click to collapse
For more information on signing zipaling and other tools that were developed over apktool and offering more features checkout: http://forum.xda-developers.com/showthread.php?t=2295002
Thanks to @XperienceD for this awesome write up.
Understanding the Decompiled apk
Let's get started
Apktool.yml :It contains some of the basic information regarding the apk it version the its file name(It's not the name that you see but you can say it be a like a code name of the apk that actually plays role in linking of the application).
version: 2.0.0-3d2e93-SNAPSHOT
apkFileName: framework-res.apk
isFrameworkApk: true
sdkInfo:
minSdkVersion: '19'
targetSdkVersion: '19'
packageInfo:
forced-package-id: '1'
versionInfo:
versionCode: '19'
versionName: 4.4.2-937116
compressionType: false
Click to expand...
Click to collapse
It contains the min. sdk version and the sdk version which for which this application was actually made.It also the compression level to which this application was compiled and at times you also find some extra information related to the vendor.
Editting this you can change the version name the min sdk version so that the app. can run on lower versions of android aswell but it's always not possible to lower all application to a lower level or a very lower sdk level.
Android Manifest : Lets do this in bit detail.
1.
<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:sharedUserLabel="@string/app_label" package="com.android.calendar">
Click to expand...
Click to collapse
the UserLable is the App-Drawer Name of the application.It's the name or say the data in res/values/strings.xml and string app_label.
the package/codename for this application is "com.android.calendar"
2.the Permissions part
<supports-screens android:anyDensity="true" android:largeScreens="true" android:normalScreens="true" android:smallScreens="true"/>
<uses-permission android:name="android.permission.GET_ACCOUNTS"/>
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.VIBRATE"/>
<uses-permission android:name="android.permission.READ_CONTACTS"/>
<uses-permission android:name="android.permission.READ_CALENDAR"/>
<uses-permission android:name="android.permission.WRITE_CALENDAR"/>
<uses-permission android:name="com.sonymobile.permission.READ_LUNAR"/>
<uses-permission android:name="com.sonymobile.permission.WRITE_LUNAR"/>
<uses-permission android:name="android.permission.WAKE_LOCK"/>
<uses-permission android:name="android.permission.USE_CREDENTIALS"/>
<uses-permission android:name="android.permission.READ_SYNC_SETTINGS"/>
<uses-permission android:name="com.google.android.googleapps.permission.GOOGLE_AUTH.mail"/>
<uses-permission android:name="com.sonymobile.email.intent.permission.SEND_CALENDAR_EMAIL"/>
<uses-permission android:name="android.permission.CALL_PHONE"/>
<uses-permission android:name="android.permission.AUTHENTICATE_ACCOUNTS"/>
<uses-permission android:name="android.permission.WRITE_CONTACTS"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="com.android.email.permission.ACCESS_PROVIDER"/>
<uses-permission android:name="android.permission.GET_ACCOUNTS"/>
<uses-permission android:name="android.permission.MANAGE_ACCOUNTS"/>
<uses-permission android:name="android.permission.AUTHENTICATE_ACCOUNTS"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<permission android:description="@string/tasks_provider_permdesc_readTasks_txt" android:label="@string/tasks_provider_permlab_readTasks_txt" android:name="com.sonymobile.tasks.provider.permission.READ_TASKS" androidermissionGroup="android.permission-group.PERSONAL_INFO" androidrotectionLevel="dangerous"/>
<permission android:description="@string/tasks_provider_permdesc_writeTasks_txt" android:label="@string/tasks_provider_permlab_writeTasks_txt" android:name="com.sonymobile.tasks.provider.permission.WRITE_TASKS" androidermissionGroup="android.permission-group.PERSONAL_INFO" androidrotectionLevel="dangerous"/>
<uses-permission android:name="com.sonymobile.tasks.provider.permission.READ_TASKS"/>
<uses-permission android:name="com.sonymobile.tasks.provider.permission.WRITE_TASKS"/>
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
<uses-permission android:name="android.permission.READ_SYNC_STATS"/>
<uses-permission android:name="android.permission.WRITE_SYNC_SETTINGS"/>
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
Click to expand...
Click to collapse
These permissions can be easily found in /system/etc/permissions the *.xmls most of the these are already integrated in the android system .. but the some especially the vendor related ..these permissions can be granted through applications .
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.LAUNCHER"/>
<category android:name="android.intent.category.APP_CALENDAR"/>
</intent-filter>
Click to expand...
Click to collapse
If you see this " <category android:name="android.intent.category.LAUNCHER"/>" line in the manifest then you'll find the application in your lancher's apdrawer unless you have hid it
3.Libraries
<uses-library android:name="android.test.runner"/>
<uses-library android:name="com.sonymobile.provider.tasks_1" android:required="false"/>
<uses-library android:name="com.sonyericsson.uxpres" android:required="false"/>
Click to expand...
Click to collapse
these permissions can be in the apk itself or in the /system/lib
Assets : The name says it's all the assets require for an application to do it all .
The res folderIt got most of the important part of the APK .The icon images you see in the apk are stored in the drawable-ydpi where y can be m,h,x,xx,xxx dpi.
now the /res/value folder contains the stylees :the design the theme of the APK ,bools are the boolean part of the APK enable/disable can be easily controlled by editing the bools.xml the dimensions part of the apk are in /res/values/dimens.xml
As I stated above the Appdrawer name of the application,
/res/values/strings.xml
search app_label and you find a line like this
<string name="app_label">Calendar</string>
Click to expand...
Click to collapse
Now replace the name as in here"calendar" with say your name
to make it
<string name="app_label">My name</string>
Click to expand...
Click to collapse
compile the application back install it and you'll see the apppdrawer name is now My name from Calendar
Smali folder It contains the java based codes for the apk file.
Understanding the framework-res
framework-res.apk is the most important apk of the android system.Without this android system wouldn't boot properly it will bootloop and if it is poorly edited it will still be the same i.e. bootloop.
To begin with the assets folder
1.It has a images and sound folder which contain the sound and the images which act as the bootup sound and bootanimation if the bootanimation.zip is missing from the system folder
2.It contains a webkit folder:if you open it you'll understand what are those yourself
The res folder :
Lets thing what all we can do with the android system by editing framework res..
The capabilities of the the bool.xml
->enable/disable WImax
->enable/disable nav bar
->enable/disable turning on of screen after plugging in or removing the charger.
each(most) line in bools.xml can help in enabling disabling some or the other feature
dimens.xml
These mods related to Bools.xml was part of a question at an event which was conducted by me and @Dev Jaskirat .And this was his question so thanks bro :good:
Dimens stands for dimensions so it makes it clears THAT it is used to change the dimestions of diffrent things eg. say nav bar the face unlock
now lets go to strings.xml
Have you ever wiped up dalik and seen Android is upgrading..??
If yes lets make it something new and classy
<string name="android_upgrading_title">Android is upgrading…</string>
<string name="android_upgrading_apk">Optimizing app %1$d of %2$d.</string>
<string name="android_upgrading_starting_apps">Starting apps.</string>
<string name="android_upgrading_complete">Finishing boot.</string>
Click to expand...
Click to collapse
%1$d of %2$d is the app count .
Edit everything else as you wish
nice!
NIce thread finally knew what i was doing wrong while decompiling apps. I wasn't pulling all frameworks but only framework-res and systemui. After reading this found that in system/framework was mediatek-res after installing this too my systemui decompiled succesfully and finally ported lolipop checkboxes
Keep Going!
this post rocks
well a very great description for a newbie and very clearly mentioned.
The thread has been updated with few more information
Nice compilation of commands.... highly appreciated...
can you add more variation? by providing with more details... it would be great
c0d3r!pp3r said:
Nice compilation of commands.... highly appreciated...
can you add more variation? by providing with more details... it would be great
Click to expand...
Click to collapse
I know it is too late to comment here , but after attending a workshop and talking to some friends I feel that it's good that the guide is kinda incomplete .Android has no boundries and thus even one of the smallest part of our systen the APK can't be just explained with a guide .APK and its structure is a very vast topic and you must try things yourself .I am always here to help you out if and when needed .
If you think you should not post a question here then you can PM me
Aman_Arora said:
I know it is too late to comment here , but after attending a workshop and talking to some friends I feel that it's good that the guide is kinda incomplete .Android has no boundries and thus even one of the smallest part of our systen the APK can't be just explained with a guide .APK and its structure is a very vast topic and you must try things yourself .I am always here to help you out if and when needed .
If you think you should not post a question here then you can PM me
Click to expand...
Click to collapse
i have been moved to more deep in to the ROM building.. but i would love to share my experiences as well.... :good:
hi Guys sent me
Apk tools new version

Categories

Resources