[KITCHEN] MIUI v4 Theme Kitchen [WIP!!] [Beta 1] [5/25/12] - Android Themes

So, I'm a themer at heart, and I love MIUI. Sometimes making MIUI themes gets me confused, I have a nice compile script set up for .9.pngs but then the folders and zips and etc etc, sometimes I get a bit overwhelmed and I completely lose myself in what I was doing. So I decided to make a sort of kitchen, resembling dsixda's ROM kitchen.. currently it's still kinda far off, but that is the ultimate goal.
This is not a graphical tool. This is not an image manipulation tool.
Basically, you take the apks you want to theme and put them in their own folder. Using framework-res.apk and framework-miui-res.apk isn't 100% necessary, but if they're not included, there's a chance the apks will not decompile properly. It will install the two frameworks if they exist, and then decompile all the apks in the folder. It goes into the AndroidManifest.xml file to get the package name (ie com.android.mms) and changes the name of the folder to it. It takes colors.xml and turns it into a theme_values.xml. It then deletes all the extra files that are not needed for a theme, and creates a generic description.xml file. It tells you to edit your pngs, description, and theme_values and run the compiler.
The compiler runs in the same directory, and compiles all the .9.pngs in each separate folder, puts the zips of them with no zip extension into a new "theme" folder, then puts it all together into an mtz in that theme folder.
If you understand MIUI theming, I hope this makes sense. I have a little video showing it off:
http://youtube.com/watch?v=Xg6UHzNjrq8
I plan on prettying it up a little bit more and I want to make a menu to use for future versions.
-----------------------------------------------------------------------------------------------------------
How to use it:
Extract v4tk folder somewhere, and add it to your PATH
Create a new folder, copy and paste the apks you want to theme into it.
- framework-res.apk and framework-miui-res.apk from the same build as the apks you're trying to edit is essential unless you already have them installed with apktool
From terminal in this folder, run "mktemplate" - this makes all the magic happen, and it actually creates a description.xml based on your input.
Edit the pngs, delete the ones you don't edit, for .9.pngs make sure to leave the 1px border alone unless you know what you're doing
Edit the theme_values files, remove the lines you didn't make changes to. Make sure no @color:android/red or whatever are in them. Hex argb only.
Go back to your terminal, run "mktheme" - this compiles all the .9.pngs, packages everything up, and creates an mtz based off your input for a filename. The mktheme script also supports lockscreen, wallpaper, icons, and preview folders... The template does not create these, but if you make them, the mktheme script will package them into the resulting mtz.
For linux or possibly cygwin (should run fine in terminal on OSX - untested though) only currently. I'm afraid it's been over a decade since I've messed with batch scripting, and before I go through the hassle of putting together a windows version, I want to have a complete project.
Also, just wanted to say one of the main reasons I'm releasing this tool is because MIUI v4 is changing a lot week to week; sometimes there's new images, sometimes there are new colors in the theme_values. If I made a template, it'd be obsolete in two weeks time
Also, this will work with any* apk for your theming pleasure, not just MIUI apps.
*maybe there's an app it can't decompile. shouldn't be, but be warned
Finally.. Download: http://lz.gd/v4tk

You Sir are a stud! and not to bad a Miui either! lol

This looks very impressive!

Nice cant wait for it!

It looks great, I love it.

Wow, seems impressive!
A Gui intefarce to exploit pngs with preview would be awesome !
Think this is a huge work

Pretty Awesome. Cant wait

Looks really cool, nice job

This is what the MIUI community needed. NICE job.

I've uploaded it with some minor cosmetic changes. It's completely functional, but not quite where I want it to be yet.. OP has been updated with some basic instructions on how to use it, post here or come find me in #miuithemes on irc.freenode.net for any issues

You sir are awesome. Got the beta downloaded. Thanks so much for your hard work and efforts.

Anybody using this? Is it working well for you?
Report any issues please.

I have not used it yet, but I plan to directly after my rom is updated from 2.5.4
Sent from my DROIDX using XDA

Related

[Q] Getting started on making themes.

Clicking the wiki just now gave me a 404 error and the sticky is a bit long and just a bit outdated in terms of the links.
What programs, apps, vids, etc do I need in order to make themes?
I have been flashing themes left and right and each have their goods and bads. The biggest bad is there doesn't seem to be a well done red theme which I would like to do. I have tried enamored but the notification icons kill it for me.
So again, are there any up to date tutorials on making themes? Thanks in advance for any help.
+1 to that
Sent from my Droid using Tapatalk
A quic and dirty how to
lovethyEVO said:
Clicking the wiki just now gave me a 404 error and the sticky is a bit long and just a bit outdated in terms of the links.
What programs, apps, vids, etc do I need in order to make themes?
I have been flashing themes left and right and each have their goods and bads. The biggest bad is there doesn't seem to be a well done red theme which I would like to do. I have tried enamored but the notification icons kill it for me.
So again, are there any up to date tutorials on making themes? Thanks in advance for any help.
Click to expand...
Click to collapse
shanesol said:
+1 to that
Sent from my Droid using Tapatalk
Click to expand...
Click to collapse
heres the How to
An apk is really just a zip file... apk stands for android package (if i remember correctly). So treat it like a standard zip file.
Youll need a pint program to make changes I use gimp its free so get it here
TIP: Your first theme should really just be a mixing and matching of other themes to get use to the process.
TIP: d/l and look at other themes and see what the have done, using the same process below you can port and mash themes. To see what is themed go to the res/drawable-xxx folders and sorte the png's in there to newest at the top and you'll see what they have changed.
TIP: system/app/xxx.apk are where most apps that are themed are contained in these apks you'll find a res folder and in there you have a bunch of folders. you really on need to look in the drawable-xxx ones mdpi, no-dpi, land and so forth. these pngs make up the apps look and feel changing them will theme the app.
You'll need apk manager this will allow you to sign zips which makes them flashable. get that here
Now get your favorite Rom and make a folder. In that folder make 2 folders one called packed the other called packed. Take your rom and unzip it in the unpacked folder. and then take the original zip and move it to the packed folder.
Next go into the unpacked folder and nav to system/framework.framework-res.apk (this holds the bulk of the android png that make up all the stuff most people change to make a theme) take this apk and unzip it in this folder and then make a copy of the apk and move the copy to the packed folder.
Now when you want to make a change to the framework-res.apk use the unpacked as a reference. us the packed as the change dir, you do this by opening but not unzipping the apk you want to change and just dragging the files you are replacing into the apk, this will replace them. You might want to make a a 3rd folder sorta of a master copy if you ever mess up the packed roms. Remember that in all three of the dirs created you want to keep the dir structure the way you extracted it from the rom and theme.
Now that you have an altered framework-res.apk you can just push it to system/framework folder (i think) and reboot and your changes are in. I never do this since flashable is easier to manage I make a flashable.
A flashable is like a rom but allot smaller, so d/l one of my themes and take the zip file and place in in a folder next to the packed and unpacked folder call it something like staging. now unzip apk manager into the top dir next to 4 other folders you just made.
Now my theme zip can be renamed to whatever you want, your going to use it as a place holder for signing flashable zips. go into the theme zip and delete ever thing in the system folder except the framework folder then go into the frame work folder and delete everything, if you have apps your theming just make the system/app.
Your flashable zip folder should only have a a meta-inf folder and a system folder, the system folder should only have a framework and or app folders. Now drag your altered framework-res.apk into the flashable zip system/framework folder you just cleaned out.
Ok now you have to sign it, copy that flashable zip to the place-apk-here-for-signing folder, this should have shown up when you unzipped apk manager into the folder the also contains unpacked and packed folders.
Now click on the script.bat and you'll see a bunch of option you can do option 16 to sign your zip. it takes a second or two and the date should get updated on the flashable.zip file in the place-apk-here-for-signing folder.
Now you have your new them ready to install. if your changing something else find the apk and replace framework-res.apk in these instruction and it works the same. note that most app reside in system/app so you next to take that into account.
Keep the questions reasonable and I'll answer then.
Thanks simmons. For the most part I have been doing the open apk without extracting and replacing png files. The one thing that I cant seem to get is changing the battery icon...it never sticks. Anyways, do the themes always have to be signed? I know amon 1.8 can flash unsigned zips but do the themes have to be signed always? I will be taking my laptop to work tonight to practice what you outlined. Thanks again.
EDIT: I noticed some themes have com.htc.resources.apk alongside framework res and some have services.jar. What are these for?
No they don't have to be signed but people will complain cause most people don't have the eng spl, it all so protects you from flashing bad stuff. If your only changing the standard 5 battery icons thus method always works.
The services.jar usually room specific and changes things like lock screen behavior mixes These with other roms will cause boot loops be careful.
Sent from my HERO200 using XDA App
Simmons thanks for answering so far.
My last question is to theme the entire phone is it basically the resources, framework, and services.jar files that need to be edited? I understand the apps would be themed themselves and then just included as part of the zip file right?
lovethyEVO said:
Simmons thanks for answering so far.
My last question is to theme the entire phone is it basically the resources, framework, and services.jar files that need to be edited? I understand the apps would be themed themselves and then just included as part of the zip file right?
Click to expand...
Click to collapse
well the service.jar is compiled and therefore can't necessarily be themed you can't hack it or mod it by decompling it or you can change it by compiling changes you made from source but for the sake of normal themes its not needed.
as for the resources I assume your referring to the resources.arsc which is basically a set of compiled xml files. In here it where you can change stuff like how many pngs are associated with the battery status icons (think of circle batter mod which has one icon per percentage instead of the 0 10 20 40 60 80 100 ? icons in the normal aosp rom) changing this can be done with the apk manage by decompiling the framework-res.zpk, making the change and compiling back. but I wouldn't recommend it to a beginner.
The problem with the above is you take the chance of the theme not be cross-rom compatible. For you normal theme all you need to change are the pngs in the res folder of the framework-apk, however somethings like the launcher or the dialer still reside in the app folder and have there own apk.
Oh and I have no question limit.
ASimmons said:
well the service.jar is compiled and therefore can't necessarily be themed you can't hack it or mod it by decompling it or you can change it by compiling changes you made from source but for the sake of normal themes its not needed.
as for the resources I assume your referring to the resources.arsc which is basically a set of compiled xml files. In here it where you can change stuff like how many pngs are associated with the battery status icons (think of circle batter mod which has one icon per percentage instead of the 0 10 20 40 60 80 100 ? icons in the normal aosp rom) changing this can be done with the apk manage by decompiling the framework-res.zpk, making the change and compiling back. but I wouldn't recommend it to a beginner.
The problem with the above is you take the chance of the theme not be cross-rom compatible. For you normal theme all you need to change are the pngs in the res folder of the framework-apk, however somethings like the launcher or the dialer still reside in the app folder and have there own apk.
Oh and I have no question limit.
Click to expand...
Click to collapse
Simmons, thank you very much. Every answer you give is clearing things up more and more for me. I have decompiled a frameworkres before when I was trying to get the circle batt mod onto the odex stock rom so I am not too unawares there. What I want to do is theme the colors on anything and everything along with making the transparent windows such as when you confirm actions and the transparent notification pull down. Are these really accomplished with simply changing the pngs or do I have to edit the xml files? If I must edit the xml files, are there key files to edit or would editing one xml affect another?
lovethyEVO said:
Simmons, thank you very much. Every answer you give is clearing things up more and more for me. I have decompiled a frameworkres before when I was trying to get the circle batt mod onto the odex stock rom so I am not too unawares there. What I want to do is theme the colors on anything and everything along with making the transparent windows such as when you confirm actions and the transparent notification pull down. Are these really accomplished with simply changing the pngs or do I have to edit the xml files? If I must edit the xml files, are there key files to edit or would editing one xml affect another?
Click to expand...
Click to collapse
The xml files really just hold names for the pngs. So for example the pngs for the battery have there names store in the xml (cant remember off hand which one of the decompiled xml from the resource.arsc.. strings??) file and then as the value value next to that filename for what percent to show that specific png at.
But 95% of your theming only involves changing the png files. So to have a clear notification back ground look in the framework-res.apk/res/drawable-mdpi/status_bar_background.png or you want to change the button to unlock your phone framework-res.apk/res/ic_jog_dial_unlock.png or to change the status bar framework-res.apk/res/statusbar_background.9.png
TIP: if you see a png with 9 in the name like xxxx.9.png its basically a stretchable png where the side that you want stechable has a one pixel wide line running the length of the png as a border this tells android that the png should stretch that side until it fills the screen.
9 patch explanation
So aside from editing the xmls for the battery percent everything is just replacong pngs? Thats awesome.
When it comes to apps like the internet browser for example, where would I find the apk? I'm assuming theming the apps is just like themeing the phone in that I just replace the .pngs right? Again your answers are very much appreciated and definitely making things seem easier. Thanks.
Hiya all.
I'm a noob at this too and I want to change the icons of some of the apps installed on my phone and theme a couple of widgets that am using. I have two questions:
1) In the system/app folder of the phone almost all the apps have a xxx.apk and a xxx.odex file. In order to change the png files in the apk does something need to be done with the odex file too?
2) Can I change the png files in the apk files in data/app the way you described above?
Sorry if the questions are noobish
From my Galaxy S loonie-phone
lovethyEVO said:
So aside from editing the xmls for the battery percent everything is just replacong pngs? Thats awesome.
When it comes to apps like the internet browser for example, where would I find the apk? I'm assuming theming the apps is just like themeing the phone in that I just replace the .pngs right? Again your answers are very much appreciated and definitely making things seem easier. Thanks.
Click to expand...
Click to collapse
To theme the browser you can alter the Browser.apk in the system/app and using the direction I posted it works the same way.
And if you make a theme pm me so I can check it out.
Fireloon said:
Hiya all.
I'm a noob at this too and I want to change the icons of some of the apps installed on my phone and theme a couple of widgets that am using. I have two questions:
1) In the system/app folder of the phone almost all the apps have a xxx.apk and a xxx.odex file. In order to change the png files in the apk does something need to be done with the odex file too?
2) Can I change the png files in the apk files in data/app the way you described above?
Sorry if the questions are noobish
From my Galaxy S loonie-phone
Click to expand...
Click to collapse
1. My theming expertise is more with AOSP roms but its my understanding that you should be able to theme a sense rom in the same way by de-odexing a rom. And yes any and all apps are themable if it has a png files in it you can unpack it alter the png's and put them back in the original apk, which overwrites the original png's and resign it and then flash or reinstall it.
2. Yes you can. any and all apks can be themed in the manner I described. for odexed roms search the forum for de-odexing techniques.
Thx for the answer. I'll search about deodexing
From my Galaxy S loonie-phone
Thanks for all the great tips I just got finished porting a theme thanks to all the help!
shanesol said:
Thanks for all the great tips I just got finished porting a theme thanks to all the help!
Click to expand...
Click to collapse
awesome pm some screenies or the op here I'd like to check it out.
ASimmons said:
awesome pm some screenies or the op here I'd like to check it out.
Click to expand...
Click to collapse
It's a simple black/white matte theme called Invertnito. It was made for Sapphire but I like CM too much to give it up lol
ASimmons said:
awesome pm some screenies or the op here I'd like to check it out.
Click to expand...
Click to collapse
Looking to have some sort of base by this weekend. I have just been mix/matching pngs I like from other themes as well as trying to make my own pngs and figuring out the transparency/borders effect. Taking my time but still want to come out with something for critique.
shanesol said:
It's a simple black/white matte theme called Invertnito. It was made for Sapphire but I like CM too much to give it up lol
Click to expand...
Click to collapse
Nice Job.
lovethyEVO said:
Looking to have some sort of base by this weekend. I have just been mix/matching pngs I like from other themes as well as trying to make my own pngs and figuring out the transparency/borders effect. Taking my time but still want to come out with something for critique.
Click to expand...
Click to collapse
Well I'm not much of a critiquer since most of the themeing stuff I've done doesn't go over so well around here (I dont like dark colors, black, dark blue blah blah) really its up to what you like, I made a couple of themes based on what I liked and left it at that. But I'll be glad to look at it and dont forget to make sure that if you use some elses stuff you give them there props in your ops and pm them a warning you going to use it, unless they specify different this is all you should need to do..
ASimmons said:
Nice Job.
Well I'm not much of a critiquer since most of the themeing stuff I've done doesn't go over so well around here (I dont like dark colors, black, dark blue blah blah) really its up to what you like, I made a couple of themes based on what I liked and left it at that. But I'll be glad to look at it and dont forget to make sure that if you use some elses stuff you give them there props in your ops and pm them a warning you going to use it, unless they specify different this is all you should need to do..
Click to expand...
Click to collapse
Definately making note of whose work I use. Though it's kind of hard because my favorite notification icons I have seen in two diff themes and neither one of them mention who was the artist for them. But still keeping at it. And like you I dont care about dark colors unless its used to contrast the main theme color. I'm working on a red theme and there will be some parts that will have a darkish background to help the red border colors and/or text pop more. In time though. Your first post here was definitely a great shove in the right direction.

[GUIDE] Want to learn how to theme?

I'm asked all the time how to theme; what's the best way, the best tools, etc. Well, I'm going to compile the best resources that I think will get you up and theming. It's a process, and you'll need to have time and devotion, but these tools and tips will help
A general guide (MOD Info: The document seems to have been removed and there is no possibility to recover it)
This is the best guide that I know of out there for theming; it is comprehensive, and if you use it, you should give a big thanks to the makers of it.
Apktool or apk manager
I find both of these to be great; I have apk manager (windows and linux) on my pc, and apktool (windows, mac, and linux) on my mac. APK manager will likely be best for beginners due to its simplistic and user friendly UI, and it offers some more features then apktool, like zipaligning, optimizing, etc. Both are fantastic, and absolutely a huge help for theming and decompiling apps.
The android SDK
It's always helpful to know how to use the SDK for adb, zipaligning, and other tasks. Remember, even if you have other tools like apk manager to zipalign, it's always good to know how to do it by hand And you'll need tools in it like draw9patch for those pesky .9pngs
Notepad++ or TextWrangler
You will use this all the time. Editing files like decompiled XMLs on this is a breeze
A nice website for Hex colors
You'll use this every time you do XML edits; you'll need these color codes to tell the XMLs what color you want to show up
Photoshop or Gimp or Paint.net
Want to go all out? Go photoshop. Want a great, free tool to theme with? Gimp is the way to go. Either way, you'll want to use one of these tools for png edits when theming. Paint.net is also another good free tool for edits.
Hex Fiend
For you mac users like me, Hex Fiend comes in handy if you ever need to edit binary (non readable or decompiled) XML.
Update Zip creator/modifier
Fabulous tool on windows to create and modify elements of updates zips
ADW Themes
Want to make an ADW theme? This is a great tool to get you started on that
Knowledge
You'll want some general knowledge with terminal or windows cmd prompt. Because you will use it. Also, you'll need to know what to edit in a theme to change aspects of color and such correctly. Well, this is a great tool to find out what you need to edit
I'll be adding to this guide as needed. Please, feel free to ask any questions, and I'll be here to answer them Hope this helps everyone!
In Depth Look: XMLs
For the first in depth look, I'm going to focus on XML edits, as they are a major component to having a complete and thorough theme. Image edits are easy enough, but many don't know where to go when it comes to XMLs. Well, here's where I'll tell you
What is an XML?
Here's is a nice read on XMLs and what they are.
What do XMLs have to do with Android?
XMLs can control many functions in android apps. For the scope of this thread, we'll be changing binary XML into a readable XML file to make our edits, which will usually result in color changes in apps.
How do I edit an XML?
Make sure you have apktool or apk manager correctly set up. They'll make XML edits a breeze. If you need help setting them up, wither ask me or see their manuals.
Take the apk you want to edit, and decompile it with one of those two tools. Make sure if it's dependent on Sense resources or TW ones that you have those set up. (Again, either ask me or see instructions for apktool and apk manager)
Once decompiled, open the XML you'll need/want to edit. See the link I have above under knowledge for finding out what XML you may need to edit
For Windows, use Notepad ++ to edit, and for Mac, use TextWrangler (just suggestions, others work as well)
Use the Hex Color code link I have listed above in the OP to find the suitable code for the color you'll want if you;re making a color change. Remember, the color codes will be 6 digits, but there'll be 2 digits in the XML before the color code. 00 is transparent, and FF is the "regular" color for lack of a better term.
When done with the XML changes, recompile the apk
Sign if needed, and install to see if the changes you've made are worth it
In Depth Look: Using Apktool or Apk Manager.
What are they?
Apktool and Apk Manager allow you to decompile, reengineer, and compile apks after making changes to files in the decompiled apk.
Why would I need them?
These tools allow you to edit XMLs, edit smali files, and change many other aspects of the apk that you wouldn't be able to do without decompiling the apk.
Setting up apktool on a mac
If you have a mac like me, remember that apk manager doesn't work on macs. So, you must use apktool, which is absolutely fine, as in my opinion apktool is better than apk manager. To set up apktool, you must have root mode enabled on your mac. To do that, simply follow these steps:
Open system preferences
Open accounts
Go to login options
Hit join next to network account server
Select open directory utility
Click the lock at the bottom of the window that pops up and enter an admin password
Then, go to the top bar on your mac, hit edit, and select enable root mode
Once you have root mode enabled, you're ready to set up apktool:
From the apktool website, download apktool1.3.2.tar.bz2 and apktool-install-macosx-2.2_r01-1.tar.bz2
Next, open terminal
su
tar -C /usr/local/bin -xvf <zipped file name>
tar -C /usr/local/bin -xvf <zipped file name> (for the second file)
Now to confirm it worked, type "apktool" no quotes
You should get a help menu for apktool
If so, you're good to go!
Now, once you have it set up, you're ready to go! After typing apktool, you'll see the help menu which'll give you the commands available for apktool, but I'll go over the basic ones here.
apktool d "apk path here" will decompile the apk
apktool b "decompiled apk path here" will build an apk from a previously decompiled one
apktool if "framework-res.apk path here" will install a framework res or any app really to allow you to work with dependent apps. For example, if you want to modify an HTC sense apk, you'll need to install the htc.resources.apk first through this method before decompiling the sense apk.
What if I have windows?
The steps will be very similar. See the apktool website I have listed above for a bit more info, but as I said, it's not too far off minus the having to get root access part.
This seems to complex, and I hate using commands! I wish there were another way....
Oh, but there is! *ends cheesy infomercial voice* Apk manager will give you a simplified setup, and all of the same features plus more; all you need is windows or linux.
Great! How do I get that?
Download Apk Manager
Extract the zip
Open up the enclosed script
The rest is pretty self explanatory
Now, even will apk manager, you'll need to make sure you know how to set frameworks up and such, but it makes it much easier with its convenient scripts. If you have any questions, ask them here and I'll certainly do my best to answer them
Helpful Hint!
Remember, once you have an apk decompiled with apktool or apk manager, you have the best chance to correctly edit .9pngs!
If you open the .9png in the decompiled app and edit it with gimp or photoshop while leaving the pre-drawn boarder there, you'll be able to recompile the apk with a properly edited and themed .9png
Advanced Decompiling
Sometimes, you have that pesky app that just won't decompile correctly. Usually, it's an app related to others, like a proprietary system app based off framework-res.apks.
When this happens, you need to ensure that the frameworks are there to have the app's recourse tables properly compile.
For either apktool or apk manager, find a folder on your computer called "apktool."
The should be a folder in here called "framework," and inside that, a 1.apk.
For an app that is dependent on the framework-res.apk in a specific phone/rom, take the framework-res.apk for that rom and rename it 1.apk.
Replace the default one in the folder with yours.
If there's a second one, like the twframework-res.apk for Samsung phones, rename it 2.apk and place it in the "framework" folder.
Now, decompile like normal, and everything should be good
Editing Smali​
Right here, thanks to Yorzua
Cool, so what about theming market apps. I mean like changing the icon. I know how to change them individually but what about changing them in bulk. Where would one put them inside of an update.zip?
Sent from sweet G2
smoochiezz24 said:
Cool, so what about theming market apps. I mean like changing the icon. I know how to change them individually but what about changing them in bulk. Where would one put them inside of an update.zip?
Sent from sweet G2
Click to expand...
Click to collapse
Changing them in bulk would require you to theme each icon you'd like, and then you could do one of a couple things:
Make them your custom icon with ADW or LP (easiest way)
Install them over the apps you have on your phone to get your custom themed app
Make a flashable zip to add the apps to system/app, resulting in a themed set of apps, now in system/app
I should probably add a bit to the guide on making zips, yes?
Added update zip tool to the guide
Section 6. ZipThemer: an alternative theme installer with MetaMorph compatibility and advanced features.
Ken
kellinwood said:
Section 6. ZipThemer: an alternative theme installer with MetaMorph compatibility and advanced features.
Ken
Click to expand...
Click to collapse
Or that'd work too from a phone I'm targeting computer usage, but that's a nice app, well done
Thanks for this resource! *tagged*
-----
Sent from my CDMA Hero. I got some hot Froyo-on-Hero action here!
user7618 said:
Thanks for this resource! *tagged*
-----
Sent from my CDMA Hero. I got some hot Froyo-on-Hero action here!
Click to expand...
Click to collapse
No problem! I'll be adding to it as well, and I'll go more in depth to version elements in my reserved posts
Sent from a truly Epic phone!
theimpaler747 said:
No problem! I'll be adding to it as well, and I'll go more in depth to version elements in my reserved posts
Sent from a truly Epic phone!
Click to expand...
Click to collapse
Good, because I'll probably be getting a new laptop soon, so I will need to download all of this stuff again.
-----
Sent from my CDMA Hero. I got some hot Froyo-on-Hero action here!
user7618 said:
Good, because I'll probably be getting a new laptop soon, so I will need to download all of this stuff again.
-----
Sent from my CDMA Hero. I got some hot Froyo-on-Hero action here!
Click to expand...
Click to collapse
Ah yeah, that'll be a pain... good thing I have all the links in one place now!
theimpaler747 said:
Ah yeah, that'll be a pain... good thing I have all the links in one place now!
Click to expand...
Click to collapse
Indeed.
-----
Sent from my CDMA Hero. I got some hot Froyo-on-Hero action here!
Thank you for this. This is just what I was looking for
Sent from my DROIDX using XDA App
Dxblade said:
Thank you for this. This is just what I was looking for
Sent from my DROIDX using XDA App
Click to expand...
Click to collapse
No problem! Glad you liked it, and check back, as I'll be adding more and going more in depth with XML edits and such
I'm sure many people will find this extremely useful. There are a lot of resources out there, but finding them can be difficult.
Apart from system-level theme creation, there's a great guide to creating ADW.Launcher themes here. I would know - I created the icon naming video haha.
Vazguard said:
I'm sure many people will find this extremely useful. There are a lot of resources out there, but finding them can be difficult.
Apart from system-level theme creation, there's a great guide to creating ADW.Launcher themes here. I would know - I created the icon naming video haha.
Click to expand...
Click to collapse
Very nice! I'll add that to the OP for you
Awesome! Hopefully this will inspire more people into creating the themes of their own!
Vazguard said:
Awesome! Hopefully this will inspire more people into creating the themes of their own!
Click to expand...
Click to collapse
Agreed! I'm looking at publishing ADW themes of my own

***3.31.11 VZW Fascinate Theme "How-To" and Reference Guide***

I came across these two great threads for the X10 and the Epic 4G and thought that it might be good for the fascinate themers/prospective themers to have a kind of community repository for theme help/links edits/how tos...while these 2 (and many others) are great resources for themes...i felt that actual edits/knowledge specifically for our phone would be a help.
i guess just based on the amount of themes i port i tend to get a ton of pms across xda/androidforums/irc on how to get started, what programs to use, how to make what edits, etc
i really dont know a whole lot relative to "real" themers from other phones and most of what i know i either picked up from reading endless links or begging for help.
whether this catches on and proves useful, or it goes down in flames like others things ive tried...i figured its worth a shot
rather than post endless links that dont always pertain directly to our phone, perhaps a good format would be me maintaining the op with small write ups of whatever edits/how tos and linking the the original. ill gradually start putting up the edits i know of that work with touchwiz and aosp (over the next few days)...but would GREATLY appreciate it if some smarter people would help out and post edits im mssing....also feel free to ask questions of how to edit what, where something is, and if i dont know/can't find out, then hopefully someone else can
Post away.........
***If anyone is interested in writing up brief tutorials on whatever or contribute links/edits, it would help out a lot***
Fascinate Contributors (directly or indirectly through posts or help along the way in some form):
dtachtd
thatdudebutch
sbrissen
andmer
retrokid223
adiliyo
oldmanjames
tiger4life
adrynalyne
s44
Credit to these threads/posts/links for much of the info
Want To Learn To Theme?
How to Theme Your Droid
Theme Help Tutorial
Installing the Android SDK (especially for adb) is mentioned below..however (imo): DO NOT BOTHER THINKING ABOUT GETTING INTO THEMING WITHOUT FIRST INSTALLING AND HAVING SOME BASIC UNDERSTANDING OF ADB. Far too many people that have issues doing theme related stuff (mostly irc) do not even have adb installed or know what it is. To me this is appalling! /end rant
Getting Started (much of this info grabbed from DtatchD http://androidforums.com/android-themes/174669-how-theme-apks.html)
What do I need (tools) to theme with?
-Umm obviously you need to be rooted
-Have the Android SDK installed
*If you've never done this before, follow Adrynalyne's awesome ADB Tutorial/Workshop
-Some form of editing software
*if you have photoshop, great...if you want a free (and imo awesome) program, then gimp is the way to go!
*another free alternative (some prefer to gimp) is paint.net
-Something akin to winzip
*or my preference (again free) 7-Zip
-Tools for editing/decompiling xml (also for cheating on .9's..but more on that later)
*look no further than either apktool, or apkmanager (automated version of apkt)
*i personally use notepad ++ to edit the decompiled xml files
-a program to *deal* with .9 images
*if you follow any how-to guide, its going to tell you that you have to patch the images in the Draw-9 Patch tool in the SDK, and then compile the images in eclipse. I'm going to tell you its a lot easier than that. Make sure you have apk(tool, manager) and then get the super awesome Draw9 Patch tool from xeudoxus here (might as well grab the full xultimate as well to deodex with)
-something to edit the service.jar with
*2 ways to go about this. one is installing smali/backsmali in your sdk (if you plan on removing things like the clock from the status bar, you need this as well) or another ridiculously awesome program Ohsaka's colorchanger program
-other REALLY important tools/programs
*Theme Kitchen (ever wonder where most of us get all those battery images/data + signal icons?)
*RGB Color Picker (one of many resources to get color codes, or you can do it in gimp from color picker too)
Drop by IRC Freenode: #fascinate-themers for help/discussion
*3.31.11*
Ok, I have the tools...now what???
I. Working with regular images in your framework-res (and in a TW Rom, tw-framework-res)
A. Where do I get a stock framework-res.apk and twframework-res.apk?
-a few options here...in an "ideal" scenario a dev or someone else has put out a stock but deodexed rom that you can just unzip and remove the frameworks/system apps/jars from...ie i generally grab mine out of something like jt1134's super clean roms or the equivalent. if a new os/update is out and that hasnt happened yet then move onto:
B. How do I deodex my framework so I can theme it?
have you downloaded xultimate
-I'm not going to further update this, as xultimate is kinda self explanatory and virtually all of our releases are predeodexed. 3.18.11
C. Where are most of the images in a theme located??? (touchwiz-based roms)
-For some stupid reason, Samsung thought it would be a good idea to split the framework-res.apk into 2 files: framework-res.apk and twframework-res.apk (in all fairness htc kinda does this with htc.resources.apk and now gingerbread does this with systemui.apk). Therefore there are *2* places that the framework images are generally located.
II. Working with the magical/infamous .9's
A. What is a .9 image exactly?
-Well heres google's explanation
-My less technical breakdown: basically .9 images are ones that are used either more than once in an .apk. If android had to define every single thing with a unique image, there would be a whole lot more going on in the framework and quite repetitive (it already is cluttered enough). By making an image that can be used in several places and stretched/resized in more than one way, it solves that issue.
1.
{
"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"
}
2.
1=Image with defined "patches" telling where to stretch/resize
2=stock/compiled .9 image
In example 1 we see a png image that is "patched" (but not compiled) the black lines on the very outside of the frame are telling android where it is allowed to stretch the image to make it fit where its needed. General rule of the thumb is a line all along the bottom of the frame where the image is and all along the right side, with a single dot in the top middle and the middle left of the frame. This differs depending on the shape. If you are patching in draw 9, on the right side of the screen it will show you the possible shapes the image can be stretched based upon your patches.
***Most of the force close problems people report when first getting into theming are a direct result of not understanding .9s. They simply try and edit the compiled 9 and then replace it in the framework, not understanding that when you edit the image in gimp/ps/whatever it strips the patches from the image and make it a standard png image, which does not tell the os the information it needs.
B. Now that I know what .9s are (hopefully) how do i work with them?
-Well there are a few ways of going about this. For simplicity sake, I'm going to outline the method that I personally use. At some point if someone who does things the other way(s) wants to do a write up, I'll include that as an addendum.
1. Editing pre-existing pngs.
a. You've opened up your framework/apk and taken a look at the images in there...you see a bunch that you want to change the color of or edit in some manner but you release that many of them have the .9 honor. best way to deal with these suckers is to decompile the framework with the images.
-put the apk in apkmanager...decompile it (see my write up on using apkmanager..coming soon)...and go into projects...navigate to the folder with the images and you ll notice that they now have their 9 patches showing....
feel free to now edit these images accordingly while preserving the patches. however...depending on your image software changing transparency levels will change the black patches as well.
*example* here is an .9 image that was decompiled (notice the black patches already there). in this instance ive used the rectangle tool in gimp to select the area inside of the 9 patches to colorize/color change to fit my theme. this is one way to edit .9s without using draw9 patch.
C. Now that I've edited my .9 pngs (either cheating them or patching them) How Do I compile them?
1. The previously accepted method required using eclipse....but thanks to xeudoxus we have the awesome xUltimate Draw9Patch Compiler !
a. Download the program....and unpack it somewhere that you'll remember where it is (if you have adb/java in your PATH it doesn't have to be in the SDK-tools folder).
b. You will see examples (1, 2, and music) on how how to work with the program. Basically (after getting rid of the examples, but not the folders there in) put the .9s in one of the folders..(I use example1 generally, but it doesn't matter)..then run the program
3.12.11
Wait...So not everything I have to change in a theme is an image???
III. Editing the Framework(s) XML for text and progress bar *color* changes
*note, some edits can be made in multiple ways, ie both through service.jar and framework edits*
A. Why would I want to screw around with xml files at all? Looks complicated!
-I'll admit I put off working with the xml a lot longer than I should have when I got into this stuff. I think i released 2/3 themes without any edits whatsoever...and frankly theres no comparison between a theme that has been properly edited, and a theme that is just using the stock settings. This is especially true in touchwiz, as samsung went with that absolutely hideous aqua color as its secondary text.
B. How To Decompile Frameworks to Make Edits (APKM/APKTOOL). *3.12.11*
1. First things first: if you havent downloaded both APKMANAGER and APKTOOL...do so now, ya really need both....also, apktool 1.3.2 will not work right for everything (you will need it for working with gmail though if you theme that). Here is apktoo1 1.3.1 (replace apktool.jar in "other" folder in apkm).
-For apkmanager you can really unzip/set it up anywhere (I keep it on the desktop, and I have a 1.3.1 and 1.3.2 version set up)
-For apktool unzip "windows installer" and place apktool.jar in your /tools folder in the sdk
-by default an aosp framework-res.apk is installed in your directory...this is fine for *most* edits...however to work with certain apks that call on the system (contacts, dialer, etc)..this is a problem...so once everything is installed...we will want to then install our twframework-res.apk and framework-res.apk from a stock deodexed rom.
Code:
cd your tools folder
apktool if framework-res.apk
apktool if twframework-res.apk
***Tbc
IV. Ya know, I'd really like to have accurate battery and reboot options in my theme!
*tbc*
V. Working with the service.jar
A. Why would I want to mod the services.jar?
-Well theres a few reasons: remapping the status bar images and removing the status bar clock are big....and changing carrier/date/notifications title colors
B. How would i do it?
1. Well you can *cheat* and use our friend apkmanager *2.25.11*
a. rename the service.jar to service.apk
b. insert the renamed file into your "for modding" folder in apkmanager
c. open the script and select 9 to decompile
d. navigate to your "projects" folder and find the file to edit (again I use notepad ++)
e. when done, reopen the apkm script and compile with 11 (if any errors come up, you did something wrong)
-yes to system.apk, no to copy over
f. in your "for modding" folder you now have a file named "unsignedservice.apk"
g. rename this to service.jar and you are gtg
2. you can smali/backsmali it (my prefered method for dealing with classes.dex) *2.25.11*
***Thatdudebutch put together a zip with instructions for using smali (and the commands) as well as the most up to date backsmali/smali (download an unzip to see example..ill post another example below)
a. How to backsmali (decompile) the service.jar
*(i rename smali-1.2.6.jar and backsmali-1.2.6.jar to just smali.jar and backsmali.jar for simplicity in terminal use):
-use 7zip/winzip to extract the classes.dex file from the .jar...and extract it to the folder where smali/backsmali is (again i assume you would want to put it in your sdk-tools folder)
-cd your sdk-tools folder (or wherever smali/backsmali is located, but ideally thats where you put it) then:
Code:
java -Xmx512M -jar baksmali.jar -o classes/ classes.dex
-you now will have created a "classes" folder inside your sdk-tools (might as well leave your terminal open and set to your tools folder for the later steps)
-navigate inside this folder to whatever file you want to edit (i use notepad ++ to edit)
-once those edits and saved and done:
b. How to smali (compile)
Code:
java -Xmx512M -jar smali.jar -o classes.dex classes/
-you now have a new classes.dex file
-use 7zip to open up your service.jar and delete the old classes.dex in there and copy the new one in. close 7zip
-you now have a new service.jar....insert it into your theme and you *should* be good to go (assuming something didnt go wrong )
3. if you just want to change colors (not remove clock or anything..or for that matter change clock color on touchwiz {sammy fail on clock location}), then you can use the super awesome clockchanger program I mentioned above.
*info originally from this wonderful post on androidforums)
*2.22.11*
1. locate the services.jar you are planning to edit (pull with adb from your phone or rip out of a rom)
2. make a folder called framework and move services.jar into that folder
3. create a zip file of the framework folder and call it theme.zip
4. move your "theme.zip" file into your android sdk tools folder
5. open up a terminal (cmd/powershell/whatever)
6. navigate to your tools directory
6a.*example*
Code:
cd c:\android-sdk-windows\tools
7. what needs to be entered to edit the service.jar: (plus whatever you want to edit) (aarrggbb color code)
Code:
java -Xmx512M -jar colorChangev3.jar theme.zip
7a. example of changing date color, carrier color, notificatons, etc
Code:
java -Xmx512M -jar colorChangev3.jar theme.zip date=FF000000 ongoing=FF00000000 network=FF000000 latest=FF000000 none=FF000000 roam=FF000000 clear=FF000000
8. hit enter and let program run (see below)
9. you will now have a "theme-new.zip" file in your tools folder
10. use 7zip to extract the service.jar from it and and insert it into your theme
3.4.11
FAQs
Q: Is theming AOSP-based roms different than TW-based roms?
A: Significantly different in some aspects...The same in others. Obviously many images are going to have different names, and certain images/features are different. Biggest difference is one framework, versus two in TW. Many of the xml edits are different as well.
Q: Is there any etiquette to theming?
A. Umm, yeah there really is .
1. for porting themes: always credit the original creator of the theme in your op, preferably with a link to their post (or donate link if they have one). its cool if you check with the original themer ahead of time before porting, but generally speaking (unless specified by the themer) as long as you aren't claiming it as your own or they now own the device you have (and could possibly be bringing it over on their own) its cool. IMO, simply saying its a port isn't good enough, a link to the original or the website of the creator must be included.
-also credit everything else you don't do on your own (apps/mods) to the people responsible
-example of a themer who *doesn't want anyone working on/porting his themes*: http://www.droidforums.net/forum/928droid/69199-theme-928droid-black-glass-x-droid-x.html#post723150
2. for making your own themes: if you use anything at all from someone else, you have to credit it. and BE HONEST about it (big problem in the android world imo)
-example: if you are using 5 lockscreen mod/reboot options/accurate battery for an EB01 theme you plan to release, credit that to sbrissen. even if you used someone else's theme as a "base" (ie kanged their framework with those built in) you can't simply credit the themer you got it from, you must credit those behind the mods they use.
-example 2: if you are using dialers/apps/images from someone else's theme, credit them for specifically what you are using (best practice would be: google search widget and dialer from bendbowden for example)
Q: What about donations?!?!
A: Yeah this is a tricky one...but let me share *my personal* thoughts on it: let me start out by saying I dont accept donations for porting themes or even making quasi-original ones (gb themes). i dont feel right accepting money from people ...that being said i probably wouldnt accept donations even for a completely original work i did from scratch. anyway....i think that themers that make an original theme from scratch or do something almost completely original are entitled to have a donate button...and if someone wants to donate a few bucks, then have at it ....
i think soliciting donations for straight theme ports (even if they take a lot of time) or just modifying/merging/doing mashups of others themes isn't really kosher so to speak. again this is my *own* opinion and not gospel obviously, but i think that far too many people feel the need to release slightly modified themes with a rebranded name and then accept money for it. really, unless you are changing a significant portion of a theme (imo at least a few hundred pngs) then it really doesnt warrant its own thread and name. if (for example) you modified JAMT's status bar, then best practice would be just to post it in the original thread as a post like "heres my own modification to jamt with an alternate status bar and icons, that i thought some might like"...not "Phoenix Unleashed" or something.
again just *my* take
***tbc***
Useful Links
Finding Colors for a Theme
How to Black Menus
Quickpanel Text Colors (credit andmer) *new 2.17.11*
How to Theme the Android Market *4.12.11
I think this will open up a lot of ideas for people to try it! Nice post nit. I was gonna ask how you get started themeing.
Sent from my SCH-I500 using XDA App
Bob-o said:
I think this will open up a lot of ideas for people to try it! Nice post nit. I was gonna ask how you get started themeing.
Sent from my SCH-I500 using XDA App
Click to expand...
Click to collapse
Indeed. I have been trying to learn a bit through reading and whatnot. I have all the tools and am teaching myself how to use them. This guide will be EXTREMELY helpful compared to bouncing between all the pages I currently have bookmarked.
nitsuj17 said:
I. Working with regular images in your framework-res (and in a TW Rom, tw-framework-res)
A. Where do I get a stock framework-res.apk and twframework-res.apk?
Click to expand...
Click to collapse
Such an important point. You must work from a stock (or as close to stock as possible) deodexed framework-res.apk and twframework-res.apk when making xml edits (although I realize this section is dealing with image editing). You can't use one already themed because when you recompile stupid **** will happen. I had to figure this out the hard way (and had to dig to do so).
BTW: awesome guide, nitsuj17! If the ***tbc*** 's are as detailed as what you have already done, this guide will be one of the best and most comprehensive/non-technical guides out there. Keep up the good work!
You sir, are the man! Been looking for exactly this!
sorry ive been neglecting this the last few days...its gonna be a wip/add as i go thing for awhile
I liked you for porting matted blue.. now I love you for making this lol. Was looking for a guide and stumbled on this.
THANK YOU for starting this guide!
I realize I could have searched endlessly to learn this stuff, but in reality I have more skills than time and learning yet another thing the hard way isn't in the cards.
I'm impatiently waiting for more on the TW framework specific section, as I have no idea what edits work for what in each.
Also, some real work examples would be excellent.
e.g.: The required xml file edits for changing all text to #5555FF.
An image reference would be awesome, as well.
e.g.: The most commonly themed images and what their framework.res names are.
I find myself trying to make a theme and giving up simply because 50% of the images look very similar, and I don't have the time to edit an image, flash it, boot the phone, figure out what changed, then move to the next random-looking image.
Also, is there a faster method to test theme changes?
Booting the phone, copying the theme over, rebooting to CWM, flashing the theme, then booting to see the changes is extremely time consuming, especially when you're not even sure where the change will occur and find yourself randomly pulling up menus and dropdowns trying to see what your change affected.
Cheers for the help.
You really did fill a deep void and I thank you bunches for the help. You will also see a beer or two coming your way for the effort. Community support like this really does get rewarded, in more than just new themers making themes.
Ill be getting to more and more in depth answers and faqs as I go along....dl30 kinda dropped in the middle of my work on this and theres a lot of themes to do. ....but thank you for specific questions id like to see more from everyone so I know what are some more commonly asked questions and what people are looking to do.
lowkee said:
An image reference would be awesome, as well.
e.g.: The most commonly themed images and what their framework.res names are.
I find myself trying to make a theme and giving up simply because 50% of the images look very similar, and I don't have the time to edit an image, flash it, boot the phone, figure out what changed, then move to the next random-looking image..
Click to expand...
Click to collapse
This is a really good idea, I talked about making one a while back but never really got around to it. Maybe I can talk to some of the guys and we can throw something together.
lowkee said:
Also, is there a faster method to test theme changes?
Booting the phone, copying the theme over, rebooting to CWM, flashing the theme, then booting to see the changes is extremely time consuming, especially when you're not even sure where the change will occur and find yourself randomly pulling up menus and dropdowns trying to see what your change affected.
Click to expand...
Click to collapse
ADB is probably the quickest and least painful way to test a theme. When you have completed it adb push <path/to/file/locally> <destination/on/phone>. Then adb reboot.
e.g.: adb push framework-res.apk /system/framework/
N00b here with theme question for Fascinate
I apologize if I am posting in the wrong place also if this has been asked before. I have searched the web and also the forum and I was looking for step by step instructions on how to install a theme ( like myst v3.3) because prior to downloading DL30 I was running supah clean and tried installing dark-myst ( on DL09- Samsung Fascinate) and I placed it on the SD card ( yes clockword is installed) and I went to update.zip then to install zip from sd card and loacted it. it installed, cleared the cache and then it went to the SAMSUNG screen and I had to restore the phone in order to get it functioning again. I am hoping that someone can provide step by step instructions on installing a theme onto Samsung Fascinate with DL30? Thank you !!!!!
tennisjunkie said:
I apologize if I am posting in the wrong place also if this has been asked before. I have searched the web and also the forum and I was looking for step by step instructions on how to install a theme ( like myst v3.3) because prior to downloading DL30 I was running supah clean and tried installing dark-myst ( on DL09- Samsung Fascinate) and I placed it on the SD card ( yes clockword is installed) and I went to update.zip then to install zip from sd card and loacted it. it installed, cleared the cache and then it went to the SAMSUNG screen and I had to restore the phone in order to get it functioning again. I am hoping that someone can provide step by step instructions on installing a theme onto Samsung Fascinate with DL30? Thank you !!!!!
Click to expand...
Click to collapse
Are you saying it got stuck on the "SAMSUNG" screen? If you used a DJ05 theme on a DL09 rom, you have to apply the DL09 theme fix otherwise your phone will get stuck on "SAMSUNG".
DL09 Theme Fix: http://dl.dropbox.com/u/17566514/DL09 Theme Fix.zip
Edit:
Install DL30: http://forum.xda-developers.com/showthread.php?t=937499
Flash only DL30 themes after installing DL30! Here's a list: http://forum.xda-developers.com/showthread.php?t=922455
Installing a DL30 theme is the same as on a DL09 but you need the new CWM to do it.
Sorry for all the info. I hope somewhere in there you got an answer to your question.
DtatchD said:
This is a really good idea, I talked about making one a while back but never really got around to it. Maybe I can talk to some of the guys and we can throw something together.
Click to expand...
Click to collapse
I'm a totally new at this but if I can help do some legwork on it I'd be willing to try. I was just thinking about looking for a list like this...
Samsung Fascinate DL30 and installing themes
letmehearucaw said:
Are you saying it got stuck on the "SAMSUNG" screen? If you used a DJ05 theme on a DL09 rom, you have to apply the DL09 theme fix otherwise your phone will get stuck on "SAMSUNG".
DL09 Theme Fix: http://dl.dropbox.com/u/17566514/DL09 Theme Fix.zip
Edit:
Install DL30: http://forum.xda-developers.com/showthread.php?t=937499
Flash only DL30 themes after installing DL30! Here's a list: http://forum.xda-developers.com/showthread.php?t=922455
Installing a DL30 theme is the same as on a DL09 but you need the new CWM to do it.
Sorry for all the info. I hope somewhere in there you got an answer to your question.
Click to expand...
Click to collapse
Thank you so much for taking the time to respond to all my scattered questions. So to install a theme I put it on my SD card then flash through ROM Manager, then boot into recovery and apply theme from SD card? DO I need to backup and clear data? I dont want to uninstall the ROM. I ended up installing Rubiks DL30 ROM. It is pretty nice looking.
tennisjunkie said:
Thank you so much for taking the time to respond to all my scattered questions. So to install a theme I put it on my SD card then flash through ROM Manager, then boot into recovery and apply theme from SD card? DO I need to backup and clear data? I dont want to uninstall the ROM. I ended up installing Rubiks DL30 ROM. It is pretty nice looking.
Click to expand...
Click to collapse
Correct. Place the theme you want (should be .zip file) onto your SD card. So if you already have the rom installed, then you reboot into CWM recovery (when I upgraded to DL30, I never even used Rom Manager).
I've read on a couple of forum that its good to clear data and wipe caches (I've done it and not done it without noticing any difference). From there, you flash the theme ("apply .zip from SD card" is the actual command in CWM) and then reboot the phone (this is an option in CWM).
Personal preference, I always make a backup (I use Titanium Backup, but I hear nandroid is good too) before I re-theme.
Samsung Fascinate DL30 and installing themes
Ok. I apologize for all the questions. I tried to do exactly as you described above and it places me at the "Samsung" screen where it has installed the package then looks as if it is going to boot up but does not boot so I have to start back at stock again. I am trying to use DL30 Midnight V1.1 - (midnight for 2.2) as my theme and my ROM is 2.2 Roms
RubikS 0.3 DL30
Is it possible it is not compatible, any suggestions will be appreciated. Thanks again.

[HOW-TO] port he_stheone64 Themes - a Goodbye to DHD Forum

HOW-TO port he`stheone64 Themes
Since my new Galaxy Nexus arrives next week, I just wanted to say goodbye to a fantastic community right in time and offer the opportunity to keep my DHD Themes alive and updated by fellow users, while I`m "retired"
My Themes have been ported to a lot of other HTC devices during the last months, which makes me very proud. Anyway most of you will still use the DHD for about a year and some Themes like Honey HD, Revolution or Ice HD have a really large and loyal user base, who would surely appreciate using their favorite Theme until they switch to a new device.
I will post a HOW-TO in this Thread and would also like to appoint 1 guy responsible for each Theme (Elegant Blues, Code Red and Indian Summer will not be continued, let`s just focus on Themes, which are ready for Sense 3.5), who will then maintain a Theme of their choice. Since the main job is done, it`s not very compilcated to update them going forward (especially if focusing on only one), at least until ICS arrives (if...). Guys who are interested should at least know how to compile and have a little modding experience.
This will NOT be a general theming guide, it`s strictly limited to the tools and processes you need to port my themes to a new platform. Good news - this will help you porting Themes from other devices to DHD and add a little learning experience for some (future) Themers and modders
I also restrict this to the essentials, since really complex stuff like inverting Facebook, Google+ or invert menu`s would just be way to much coding, been there, done that...
Themes
REVOLUTION - http://forum.xda-developers.com/showthread.php?t=884888
HONEY HD - http://forum.xda-developers.com/showthread.php?t=1028813
ICE HD - http://forum.xda-developers.com/showthread.php?t=1339007
Credits:
The entire DHD community and especially ARHD & RCMix Team, who deliver fantastic ROM`s for us (also all other ROM dev´s)
My fellow Themers - we all had a steady communication channel and I was pleased to help and also grateful, when I got help
daneshm for Theme Porter & apkmanager
brut for apktool
pendo for compiling latest apktool
Tools:
apkmanager and / or apktool for decompiling apk`s and jar files
Theme Porter for batch updating pngs
SDK incl. tools
Photoshop and / or Gimp
PNGGauntlet in case you want to compress pngs
Winmerge to compare individual files
Kdiff3 to compare full ROM`s
multiupload.com - since it`s easy to download for users and you can track downloads
zipalign batch script - comes in very handy when updating full Themes
Preparation:
Copy latest apktool compiled by fernando (1.43) in OTHER folder of apkmanager or use it to directly compile. It´s compiled with latest SDK 14 and smali / baksmali sources and will work better with Sense 3.5 (and ICS) files as official version. Do the same also with latest aapt.exe and zipalign.exe from SDK.
Modded ICS apktool.jar - http://minus.com/mIA3OFkYq/17
zipalign batch script - http://minus.com/mIA3OFkYq/10
Unpack Theme porter to a location of your choice - http://minus.com/mIA3OFkYq/9
Unpack zipalign script and you may update the zipalign.exe with latest version from SDK
Download Winmerge and KDiff3 and install
Comparing ROM`s
Download current ROM and new ROM update
Extract both ROM`s
Open KDiff3 and select both folders (not file) and compare
KDiff3 will show you all files, that have been changed since latest update
Now you know which files you need to update (worst case ALL )
Tools
In this folder you find some of the tools I use frequently:
http://minus.com/mIA3OFkYq/
Files to port:
ALL which are part of my current Themes
Download my latest Theme and copy (don`t move - you need the themed png`s later to push them back to edited files) all apps in NEW app folder of THEME PORTER and framework files in NEW framework folder of THEME PORTER.
Now copy the same files of stock ROM in OLD folders of app and framework of THEME PORTER and hit the .bat. This will transfer stock pngs to the Theme and ensure, you don`t get compile errors later.
Now decompile only the following apk and do the same with apk`s from THE SAME stock ROM.
Then diff the apk`s I posted here in Winmerge (focus on xml I post here, also see "comparing files") and you`ll see all my edits.
Now edit all xml accordingly inside Winmerge. When you are ready delete all saved .bak files and compile.
Now use THEME PORTER to push the pngs from my old Theme to the new compiled apk´s and all other Theme apk´s.
Zipalign all apk`s and pack zipaligned stuff in my empty update.zip (which you can rename) and flash - zipalign script, just unpack zip, put all apk`s in this folder and hit the .bat
Comparing files
Decompile old and new changed file
Open Winmerge and select both decompiled folders and compare
Winmerge will show you all edits, that have been changed since latest update
Now you can edit inside Winmerge and update Code changes from Theme to the new file and compile
Once you`re done with all new files, follow the guide above
IMPORTANT: HTC does change a lot for nearly every base, so in 99% of the cases you will then need to trouble shoot since some layout files or styles do lead to other pngs then before, so you need to check carefully and then find out what you need to adjust.
Files to decompile and compare:
FRAMEWORK-RES NOTE: You need to add new custom png BEFORE you compile plus all new batttery icons
drawable folder:
progress_horizontal.xml
list_highlight_active.xml
stat_sys_battery.xml
stat_sys_battery_charge.xml
zzz_stat_sys_battery_1.xml
layout folder:
status_bar_latest_event_content.xml
values-hdpi folder:
styles.xml
BROWSER
BrowserSettings.smali
CALENDAR (only for 3.0 ROM`s)
values folder:
colors.xml
DOWNLOADPROVIDER
layout folder:
status_bar_ongoing_event_progress_bar.xml
CALENDAR PROVIDER
values folder:
colors.xml
COM.HTC.RESOURCES (not very important in Sense 3.5)
values folder:
colors.xml
HTC DIALER (Dark Dialer)
values-hdpi folder:
styles.xml
PHONE (Dark Dialer - not necessary for Sense 3.5)
values-hdpi folder:
styles.xml
ROSIE NOTE: You need to add new custom png BEFORE you compile (most stuff not necessary for RCMix due to tweaks)
layout folder:
all_apps_view.xml
application_boxed.xml
values folder:
colors.xml
dimens.xml
integers.xml
values-hdpi folder:
colors.xml
dimens.xml
integers.xml
values-port folder:
integers.xml
values-port-hdpi folder:
dimens.xml
SETTINGS
AndroidManifest.xml
SYSTEMUI - NOTE: You need to add 2 new custom pngs BEFORE you compile
layout folder:
quick_settings.xml
status_bar_expanded.xml
status_bar_latest_event.xml
status_bar_preference.xml
status_bar_tracking.xml
quick_settings_config.xml
status_bar_tracking_trans.xml
values folder:
drawables.xml
colors.xml
smali folders:
StatusBarService.smali
TWITTER
layout-port folder:
widget_large_view.xml
widget_small_view.xml
layout-land folder:
widget_large_view.xml
widget_small_view.xml
FACEBOOK
layout-port folder
widget_view.xml
layout-land folder
widget_view.xml
HTC LAPUTA WIDGET (dark Widget) - I`ve done this only in old Themes
drawable-folder:
list_text_color.xml
layout folder:
location_widget_view_4x4.xml
location_widget_item_4x4.xml
layout-hdpi folder:
location_widget_view_4x4.xml
location_widget_item_4x4.xml
values folder:
colors.xml
Thank you so much for your awesome work, I learned a lot from you in the past months! Have fun with your new phone
nooooooooooo a good member in this DHD forum will go... :'(((
wish u all the best
We will really miss you!
So if you're moving to Galaxy Nexus, I will have motivation to start learning about android a bit more .
I wish you next great themes .
Hate to see you go. But thanks for all the help you have given me. And all the knowledge you have shared with this community.
Sent from my Inspire 4G using XDA App
so there will be no ice hd theme for sense3.0? =(
Massive thanks for all you have done for us mate and good luck with your new device.
You will be sorely missed though hopefully you have now taught us enough that we can keep our phones looking so classy .
a sad day
many thanks for your work, without your modifying our DHD will no longer be the same
godspeed and have fun with new Galaxy Nexus
Sad news, though not really a surprise after your recent posts. But it says everything that, even when you're planning to move to a new device, you take the time to help others carry on your themes and update them to new ROM versions. Thank you so much for this guide, and of course for all of your beautiful themes, hard work and especially your patience with our questions. I learnt a lot, and I'm sure many others did too.
I hope you enjoy your new phone as much as we've enjoyed having your themes on our DHDs. And that you're inspired to improve it and create something equally amazing on it to share with others.
Laters, honey hd...by far the greatest theme on dhd
Sent from my Desire HD using XDA App
thanks for your great themes!! You're the best! Much fun with the Nexus.
Will you develop the Phone too or only 'use' it?
Sent from my Desire HD using Tapatalk
Cheers for the stunning themes, and wish you luck.
Regards
sad that you won't be around here, you're the theme master for everyone. we learned a lot from you certainly!! Kudos and good luck
thx for the flowers guys (and XDA for 5 thx limit...), but most important reasons of this Thread is helping members of this Forum to maintain and carry on these Themes. Also give new modders some insight, so they see how they can manage their stuff in an environment of fast changing ROM's. First PM's arrived, but you can still feel free to contact me. I will ensure, you will not be alone with your questions and will still have an eye on the threads.
I'm sure I will also see some of you over there at the Nexus forum, like I already met good guys like Mike1986 or Whiskey there.
Man, my heart just sank a bit, My DHD looks awesome due to guys like you. DHD community will miss you a lot. Many thanks for your awesome work and wish you all the fun with your Galaxy Nexus.
What do you do?
You can´t leave the DHD!
Everyone need´s your Themes!
I hope you don´t rebuy your DHD, so you can make a Theme for ICS when it is come out.
Thank you for everything what you do for the DHD.
You are a great Themer, stoney.
he_stheone64 said:
thx for the flowers guys (and XDA for 5 thx limit...), but most important reasons of this Thread is helping members of this Forum to maintain and carry on these Themes. Also give new modders some insight, so they see how they can manage their stuff in an environment of fast changing ROM's. First PM's arrived, but you can still feel free to contact me. I will ensure, you will not be alone with your questions and will still have an eye on the threads.
I'm sure I will also see some of you over there at the Nexus forum, like I already met good guys like Mike1986 or Whiskey there.
Click to expand...
Click to collapse
Dude... you're supposed to be be quiet now... I'm mourning your passing...
maybe now someone will create a ICS theme for Afiinity like you did for Runny
Thanks for all your help...!!!
Will lose you in this part... a great LosT....!!!!
Even when you're leaving you're still thinking on helping , man you are the best , again :thanks a ton n'd enjoy your new phone.

[GUIDE] For Theme Chooser Themes For Beginners

Hello XDA,
I've gotten a request to make a guide about theming. I am not going to make this an expert guide because there are many other guides out there that might suit others better. http://forum.xda-developers.com/showthread.php?t=916814 <- That is a good resource for theming.
Anyways, I want to share how I themed my theme. I made a theme that was to be used with the Theme Chooser found in many roms.
Since I was new to theming, I decided that I was going to use another theme that worked with my xoom as a base for my theme. So for me, I downloaded jasonevil's Xperia S theme. It came in the form of an apk, as most theme chooser themes do.
So if you plan to do what I did and base your theme off of someone else's theme, here's what you do: Please read through the entire post first.
Before you begin, familiarize yourself with .png files and .9 files too. Also, prepare yourself for fustration. You may also want to print this out, unless you are using a multi-monitor setup.
------------------------------------------------------------------
NOTE: Throughout this guide, you should take regular backups. You can find "backups" under the "Extas" tab in VTS. Don't do that now, because you probably don't have VTS yet.
--------------------------------------------------------------------
1. Download a theme that you would like to use as your base. It should be made for the Theme Engine and should come in an apk. And it might be nice to work with a theme that works with your device.The theme should also theme everything (or more) of what you want to theme.
2. If you find the theme on a forum, remember to thank the author of the theme.
3. Ask the themer, preferably through a PM, for permission to use ANY part of their work in your theme, if you plan to distribute your theme to the public.
4. Make sure you have the Android SDK setup and ready to go. It should be in your path and ready for use.
5. Download a software called "Virtuous Ten Studio". We'll call it VTS. VTS is an amazing piece of software that makes theming and modifications very easy, and it comes with many tools that make it a must have. It's not required, but you might want to familiarize yourself with the software on the website.
6. Take a breath, you are in for a ride!
7. Open up VTS
8. Hit File>New Project
9. Give your new project a name. Make the project name something like template or the name of the theme you are theming. Don't worry, the name you give here will not be the name of your theme, infact, this isn't your theme at all. We are just going to keep this as a reference, you may not even use it at all.
10. Give your new solution name . Make the name of the solution something that you can understand, the name of your solution will not affect the theme directly. Think of the solution as your desk. It holds everything that is related to your final goal: the finished theme. This should probably be reflective of the theme you are going to make.
11. DON'T hit OK yet. OK? Before you do that, In the Create new project window, go to the second tab that says "Apk-Tool".
12. Make sure that "Generate Java Sources" is checked on. I don't really know why I have it checked off, but things worked when it was on.
13. Where it says "File:", navigate to where you have downloaded your template apk.
14. You have been patient enough, you can finally click the ok button!
15. On the left of the screen in VTS, you should see a structured layout of your solution and theme. On the top of that structure, you should see your solution name. Right click on that solution name and click add project.
16. Oh no! Not another screen like before! Not to worry, unless you are combining themes, this should be the last time you see this screen. In the dialog, where it asks for a project name, put a name that resembles your final theme, perhaps the name of your theme.
17. Repeat steps 11-14
18. Take a second to breathe, you'll need it!
19. Now take a look at the final theme project at the left. That project is exactly the same as the other one (template theme) in your solution. Right-Click on the final theme project's name and hit "Properties".
20. You'll see a window with a bunch of stuff, but the only thing you should change is the "APK-Name". In that field, delete everything that is already there and type the name of the final product. This is the name of the file that people will download from wherever. It doesn't have to be the name of the theme itself, but make it fairly short and descriptive. At the end of the name, put ".apk" at the end. It's better to not put any punctuation and spaces in that field. If you want to put spaces in between words, try a "-" or an underscore "_" instead. Click OK when done.
----------------------------------------------------------------------------------------
From now on, "your project" referrs to the final project. The other project that you named after the template theme is there in case you want some inspiration. And "your theme" referrs to essentially the same thing. The "original theme" referrs to the theme you are basing your theme off of.
---------------------------------------------------------------------------------------
Now lets understand what makes up our theme chooser theme:
Under your final project, you should see a file called "AndroidManifest.xml". This is an important file because this is how the Android system sees your final apk, sees it as a theme, and knows what to do with the theme. RIght now, the AndroidManifest tells the Android system that your theme is exactly the same theme as the one you are using as a base. You need to change that. BE REALLY CAREFUL when changing things in the AndroidManifest, as it can render the entire project useless if something is done improperly.
"res" is a folder where all of your theme's resources are stored. When I say resources, I mean all the images that you are using that make up your theme. The folder also has other .xml files that make up your theme. The xml files stored in the "values" folder are core components to your theme. The xml files in the "xml" folder are bits that are specific to certain apps.
------------------------------------------------------------------------------------------
21. If you are using someone else's theme as the base of your theme, it is imperitive you give them credit. I did that in my AndroidManifest. In the AndroidManifest.xml file, after "</manifest>" at the vert end, hit enter a couple times and then start the line with "<!--" This is important as "<!--" to the Android system means that the text that follows is not code, and is human language. Therefore it will skip it. With that, you should give credit to the work of the themer whose work you base yours off of. At the end of your note, put "-->". That closes off the comment.
22. In the AndroidManifest.xml you should see the word "package" in red. Next to that, you will see an "=" and a pair of quotation marks. Inside those quotation marks, change what ever is there to "com.[whatever]", What you put in there must be unique, as you want to make sure no other project, theme, or application in the world has that name. For me, I had package="com.yosterwp.theme.honeycombICS". I decided to put my username and the name of my theme in the name of the package. You may wish to put your username and theme name in, but anything else can work too. Don't put the theme in someone else's name.
23. In the rest of the AndroidManifest, you will see the name of theme you are basing your theme off of in multiple places. Replace those names with the name of the theme you are making. This is important because this is the name of your theme.
24. If the original theme has a wallaper, but you do not want a wallpaper to be bundled with your theme, delete "pluto:wallpaperImage=[whatever is here]". Do not delete anything else or anything else that begins with "pluto".
25. Press CTRL+S to save the file.
26. Now, in your project, expand the "res" folder. Then expand the "values" folder under it. If you see a file called "public.xml". Here's the scoop: public.xml is a file that tells theme chooser what your theme will theme, and where it is. This is a file generated by VTS (for the tech-savvy, apktool does that). The file gets generated by the smali code that comes out of the decompiled apk. But that is not important. What is important is removing that file. To get rid of it, you should right-click on the folder and click "open in explorer". This will open up an oh-so-familiar explorer window, Here you can just select "public.xml" and simply delete it like you would any other file. When you are done, close the explorer window.
27. Now you want to refresh VTS. To do that simply press File and then click on the name of your solution.
28. Yay! Everything has loaded! You have just scratched the surface of the surface in theming. I advise you take a break for 5 minutes. Drink some beverage. Look outside, smell the fresh air. Look away from your computer screen to give your eyes a break. Trust me, things go wrong when you are not relaxed.
29. Now that you changed some of the AndroidManifest, you need to change some other things too. Go to your project, look for res>values>strings.xml. Once you find strings.xml, change every occurence of the original theme's name to the name of your theme.
30. In the same strings.xml, replace the name of the author who made the original theme with your name. And also change the copyright to what you want too.
31. Press CTRL+S to save the file.
32. Now, look for res>values>styles.xml. At around the 3rd line, you should see something like "<style name="blahblah". Change "blahblah" to the name of your theme.
33. From there, you can replace files and change values in some of the various xml files. Except for the files in the smali and values folders, you can remove, modify and/or replace files in any folder. Don't touch the AndroidManifest. Only modify it if you want to change the version of your theme. If you are replacing files, make sure that the new file has the same name as the old file. And make sure it is of the same type too. You can change as many files as you want at a time when you are theming, but as soon as you return to VTS, reload your project. You can do that by clicking File and then your solution.
34. Once you have done all the modifications that you have wanted to do, it's time to get all that stuff in VTS into one apk again. Reload your project in VTS and then click "Build All". If you do not want the original theme to build, by now you can either delete it, or right-click on your theme and click "Build Project".
TIP: Before building a project, it is a good idea to clear the logs, so you can read it later to see any errors. Go to View>Clear Logs.
35. If you encounter errors while building, you can assume something went wrong. If you want to know what went wrong, go to Extras>Logs. There you can see everything that VTS throws at you. It may seem like a foreign language, but if you read it, it will start making sense, and you will know what to do pretty soon.
36. If all goes well and you get "Build Successful!" CONGRATULATIONS! You have made your first theme! If you have adb set up and you have your phone/tablet connected to your computer, then you can use the built in "Push to device" option in VTS, that automatically installs your theme on your device.
37. Finally, if you have permission to distribute your theme from the developer of the original theme, make a thread on XDA (put it in an appropriate place), and upload your theme! Put some screenshots in there too.
38. GIVE CREDIT TO THE DEVELOPER OF THE ORIGINAL THEME ON YOUR THREAD.
It isn't the most professional guide out there, but I hope this guide helps people get into the world of theming. If this guide helped you, say thanks through the button!
Please don't quote the entire OP.
Virtuous Ten Studio Link: http://www.virtuousrom.com/p/ten-studio.html
A list of themes to go to try: http://forum.xda-developers.com/showthread.php?t=1673456
Tips
I guess I'll dedicate this post to tips.
Amazing! Thnx a ton!
Thanks a lot for this guide. It is very easy to follow and a great place to start if you have never themed before. VTS is awesome too.
I ran into one issue though. I followed the outlined steps thoroughly, and made just minor changes as a test to make sure everything worked. The apk installed fine, and I see the theme in theme chooser. When I apply it, I get the infamous "this theme was improperly compiled. please contact the themes author" error message. Looked all over for a fix before posting here, but have had no luck. I tried applying stock theme and rebooting but it did not help. I installed the original/base theme and it worked fine... Anybody have any ideas?
alexcolodner said:
Thanks a lot for this guide. It is very easy to follow and a great place to start if you have never themed before. VTS is awesome too.
I ran into one issue though. I followed the outlined steps thoroughly, and made just minor changes as a test to make sure everything worked. The apk installed fine, and I see the theme in theme chooser. When I apply it, I get the infamous "this theme was improperly compiled. please contact the themes author" error message. Looked all over for a fix before posting here, but have had no luck. I tried applying stock theme and rebooting but it did not help. I installed the original/base theme and it worked fine... Anybody have any ideas?
Click to expand...
Click to collapse
apply the stock theme reboot then apply your theme
daman215 said:
apply the stock theme reboot then apply your theme
Click to expand...
Click to collapse
Thanks, but as I said I tried that and it did not work in this case.
alexcolodner said:
Thanks, but as I said I tried that and it did not work in this case.
Click to expand...
Click to collapse
I have noticed that the folder where some pngs are stored makes a big difference. For example, if you want images that are made for mdpi tablets only, then you would place those images in res/drawable-sw600dp-mdpi.
But I noticed that if you keep the theme icon in that folder, theme chooser will throw a "theme not compiled correctly" error.
Perhaps you have an image where an image shouldn't be...
Hope that helps
DId this guide work for anyone? Please let me know if there is any issue.
Thanks!
hi yosterwp, thanks for the tutorial.
Just to notice you that there is a CM theme template already by Ricardo Cerqueira here
https://plus.google.com/115049428938715274412/posts/Epq3Xt83Bpd
pier10 said:
hi yosterwp, thanks for the tutorial.
Just to notice you that there is a CM theme template already by Ricardo Cerqueira here
https://plus.google.com/115049428938715274412/posts/Epq3Xt83Bpd
Click to expand...
Click to collapse
Thanks for the heads up! I made this tutorial to help people who are interested in theming for the first time, dip their toes into the sea of theming.
Once a person is comfortable with theming, I'd definitely recommend using Ricardo Cerqueira's template to make even better themes, without using another user's theme.
pier10 said:
hi yosterwp, thanks for the tutorial.
Just to notice you that there is a CM theme template already by Ricardo Cerqueira here
https://plus.google.com/115049428938715274412/posts/Epq3Xt83Bpd
Click to expand...
Click to collapse
yosterwp said:
Thanks for the heads up! I made this tutorial to help people who are interested in theming for the first time, dip their toes into the sea of theming.
Once a person is comfortable with theming, I'd definitely recommend using Ricardo Cerqueira's template to make even better themes, without using another user's theme.
Click to expand...
Click to collapse
The template provided by Ricardo requires linux. Can someone please guide me on how to use that template and build it? I'm still learning.
muzicfreako said:
The template provided by Ricardo requires linux. Can someone please guide me on how to use that template and build it? I'm still learning.
Click to expand...
Click to collapse
Well, for starters, you'll need linux on your computer. I personally use Ubuntu Linux on a separate partition on my computer. But I know many people who prefer to use Linux in a virtual machine. It is just a difference of whether you want to boot Linux without booting Windows first or not. Anyways, I'd recommend Ubuntu because of its easy installer for this purpose. But . you can chooser any distribution of Linux you like, because they will all compile the theme in the same manner.
Once you have Linux ready, you'll need to grab the android sdk, and ant. There are guides out there that can explain waaay better than I can.
From there, you'd extract the theme, change some files, then you would use ant and build the file using it. Some amount of instructions are in the readme and in some of the xmls. Or, you could build the template immediately, and use my guide on modifying it in VTS. The effect should be the same.
These aren't great instructions for R.C.'s theme, I know. But I hope it points you somewhat in the right direction.

Categories

Resources