[ATTN][DEV] VillainROM and Partners Presents VillainTheme System 0.3.5 [THEMERS ONLY] - Eee Pad Transformer Themes and Apps

VillainTheme System 0.3.5 for the TF101
http://www.villainrom.co.uk/forum/showthread.php/4971-About-VillainTheme-System
pulser_g2 said:
OK, so I think it's time to explain what this is about. It's born from the idea that came about on IRC, for a way to make a theme once for a ROM, rather than have to adjust it for each incremental update for a given ROM or ROMs.
As a user, you don't need to know much - just flash this zip like a regular zip, and you'll get your theme running. But you should be able to apply themes to any device, ROM, and version of the ROM, without it causing adverse effects. That means less time spent by themers making the original theme, and less time spent modifying it constantly for new versions of ROMs.
As a themer? Well, here is the information:
Inside the zip, in the vrtheme folder, you can create a folder called "system" and "data". The former is required, the latter is not required unless you wanted to theme a data app (strongly not recommended, unless you know the app will be there on every phone)
Inside the system or data folder, create a subfolder "app", and in these, make subfolders named EXACTLY after the APK name. For example, to theme the Browser, you need a folder called "Browser.apk". It must be correctly capitalised.
Within there, place the files you require for your theme, in the relevant locations. So most PNGs will be in res/drawable-hdpi/. You can put in xml files too (those which are not in resources.arsc), if you compile them via apktool, and extract them with a zip tool.
In the vrtheme folder, as well as system and data folder, one called "raw" can exist. Within here, you can place files to be copied verbatim to the ROM (for example, modified JAR files). Note that using this may make the theme device dependent (read WILL make it device dependent)
And that's about it.
Features
Will modify APKs in a ROM, without changing signatures, and can be used on any ROM where the filenames of themed files is the same.
Should not need updated between versions of a ROM
Zipaligns all APKs before installation
Stores a backup of all files being modified in /cache/vrtheme-backup/
Requires no coding abilities or editing of files - just drag and drop
Can copy "raw" files, though at risk of not working on other devices (well, let's face it, it won't work on likely a slightly different ROM, so this feature is not recommended or encouraged)
Credits
Doctorcete for the original idea in a discussion on IRC
Stericson for the original idea of metamorph. While totally different, it's a shared goal to separate themes from ROMs
Matt from the Metamorph team, for the zip binary compiled for Android
Seshy, for testing
EULA
Click to expand...
Click to collapse
Nothing evil or complicated - just a few little things. You should not charge for access to this code. That includes a zip containing this, or a derivative of it. So please don't sell themes using it. That's not particularly cool. If you want to use it commercially for some reason, get in touch with us.
If you spot a bug or error, and find a fix, please reply in this thread and let us know, or post the changes you made. If you're going to distribute the changed version, it is expected that you share the change made by contacting us, or posting it here.
Finally, don't be a douche - don't rip this off or call it your own, and leave all headers and comments identifying the origin of the code in place. Don't rename this to match your ROM or "team" name - it's not cool, and it's not yours to go and adjust. I chose to make this a readable "plain" script, but can easily obfuscate and encrypt it if you want to be a douche.
Copyright VillainROM (2011). All rights reserved
Click to expand...
Click to collapse
Now this project was created around the SGS2, and as such it did not work on the TF101 at first, however me and Pulser have spent the day looking for solutions and finally got it working for the TF101.
IMPORTANT: DO NOT USE THE SGS2 TEMPLATE FROM THE VILLAINROM WEBSITE.
Download:
0.3.6 experimental
Clean template without theme included: http://www.mediafire.com/?5bs9srz88i4wdq4
Asus Eee Pad TF101 VRTheme template: http://www.mediafire.com/?5gyr1g0xgd05t70
Note: for now the template is my windows phone 7 theme since it shows you where everything goes really well
If you find any issues or bugs PM me with as much info as you can and if possible a recovery log (found in /cache/recovery/) so I can try and find a solution to your problem.

Changelog
0.3.5
Fixed ASCII art in updater script.
Minor clean up of installtheme.sh
Added preview.png to template.
0.3.3
Modified installtheme.sh as it was giving possible problems.
0.3.2
Fixed a problem with raw folder copying. Put contents of /raw in /system now on the root of the .zip
Fixed some status 0 errors.
Currently known bugs:
You may have issues trying to flash framework files and app files in the same .zip (code 0 error).
Temporary solution: Flash the framework folder and the app folder in seperate .zip files.

hello,
is that you can see screen pls ?
And this theme is compatible with any rom ?

wallah said:
hello,
is that you can see screen pls ?
And this theme is compatible with any rom ?
Click to expand...
Click to collapse
If you had taken 3 seconds to read the post you would know it's not a theme.
This is for themers only.

yes I have read and I have not really understood ...
sorry I disturb

For any themers who want a better example of how it works, I just updated my own theme to use this method:
http://forum.xda-developers.com/showthread.php?t=1120525

Hey seshmaru,
This is definitely a great method! As soon as I get a chance, I will experiment with adapting PCB Blue to use the VillainROM theming method (with leaving all credit intact of course )
If someone wants to uninstall any themes applied this way, what would be the best method though? Just reflash their ROM?...(is what I'm thinking).
Thanks for working on this with the Villain Team, and if there's anything I can do (help/test/etc.), please don't hesitate to PM me.
Thanks again, and cheers for now!

scar45 said:
Hey seshmaru,
This is definitely a great method! As soon as I get a chance, I will experiment with adapting PCB Blue to use the VillainROM theming method (with leaving all credit intact of course )
If someone wants to uninstall any themes applied this way, what would be the best method though? Just reflash their ROM?...(is what I'm thinking).
Thanks for working on this with the Villain Team, and if there's anything I can do (help/test/etc.), please don't hesitate to PM me.
Thanks again, and cheers for now!
Click to expand...
Click to collapse
Well seeing as the current .zip makes a backup of the original files, in the future there will probably be a script made to restore the back up.
Till then the easiest way is to just reflash your ROM without a wipe or to reflash whatever theme you had before.
If you want to help with testing (constantly fixing things since pulser is away so it's my task to keep the SGS2 template and TF101 template as identical as possible) or have any questions you can pop by the VillainROM IRC since I'm generally in there.

Hmm... I can't quite figure out why, but it is not working right for me.. My framework-res.apk file is exactly the same after flashing....
I managed to do some debugging, and i found out that the file file is actually created, but it doesn't copy it over for some reason...
within the VRTheme folder (which i prevented from being deleted so i could check out the contents) the framework-res.apk file is in apply/system/framework/framework-res.apk...
So i tried editing the install script, all the way down at the bottom, and i changed the code from from cd /cache/vrtheme/apply/system/framework/aligned/ to cd /cache/vrtheme/apply/system/framework/ and it worked!
All i can guess is that the file isn't getting aligned for some reason, so that folder/file is never created, but the script is still calling for it...
Can you please let me know if my fix is acceptable, or if there is something off with it that can be fixed and would allow it to be aligned therefore creating the folder and the file?
-trailblazer101

I just want to confirm this. I made some xml edits for the framework, finsky, and gmail were I change the color of the text. Those are in the values folder in the colors.xml file. After you compile the apk you cannot see that folder so I am guessing that you cannot use this to flash that xml correct?

went toflash the theme i get error 0

MetAloid said:
went toflash the theme i get error 0
Click to expand...
Click to collapse
just try the new version now i get error 6

MetAloid said:
just try the new version now i get error 6
Click to expand...
Click to collapse
I got error 6 as well.

Error 6
I'm gettting same error ^ as cescribed by others.

I have been wanting to get into the Honeycomb theme arena and this looks like a good place to start, thanks for your work and I hope I can figure it out. Would it be ok to drop by IRC if I have any questions?

Hi all, just looking for confirmation that the VillainTheme flasher is able to apply .XML files (specifically in framework-res/drawable)?
Thanks in advance!

It should be able to, although it's had some issues at times.

Anyone getting status 6, try this new updated template: http://www.mediafire.com/?5bs9srz88i4wdq4

seshmaru said:
Anyone getting status 6, try this new updated template: http://www.mediafire.com/?5bs9srz88i4wdq4
Click to expand...
Click to collapse
That 0.3.6 template works for me
Regards, folgui.

I'm having a problem with Recovery giving "E:Error in... / Error 0" with my theme for the TF101 below.
Can someone please test it and report their findings? Note that you should do a Nandroid backup first!
Thanks in advance...
** EDIT ** - Found the problem and fixed it...sorry for the post!

Related

How-to Theme Development

To create themes, or to edit themes to your liking, you will need a working knowledge of android, adb, how to resign apk's, knowledge of your own O/S.
Before you start be aware that you will probably end up wiping your phone once, if not more. So lets go over the things that you will need.
You will need JF's RC30, RC8, or ADP1 V1.3, depending on what version you intend to create for.
Here is the link to these: http://forum.xda-developers.com/showthread.php?t=466174
You will also want to get the dev bootloader installed on your phone and to HIGHLY suggest everyone trying your theme to install it as well.
Link to dev bootloader: http://forum.xda-developers.com/showthread.php?t=455860
You will also need to resign all the apks located in /system/app and framework-res.apk located in /system/framework. When you push all of these to your phone, you will need to do a wipe.
JesusFreke was kind enough to build a custom signing tool for me that would allow me to right click on an apk and resign it from there. I am posting it here for others to use as well. Note that this is a courtesy of JF, so thank him for it. I cannot stress how much time this has saved me and will save you.
Here is the link: Http://www.FightForthePits.com/testsign(2).zip
Before using this you need to know how to set this up:
I will assume that you have the sdk downloaded and extracted somewhere(if not, do that now), extract both files to the tools directory of your sdk.
Now you will need to add the tools dir of your sdk to the environment variable CLASSPATH.
To do this, right click on My Computer click properties, then choose the tab that says advanced. Click the button that says environmental variables. Go to system variables find the one that says CLASSPATH, double click it, go to the end of variable value. There should be a semicolon ; at the end. type in the path to the testsign.jar located in the tools directory of your SDK, for example the path to my testsign.jar was c:\sdk\android-sdk-windows-1.0_r1\tools\testsign.jar If CLASSPATH is not in your system variables then create it.
If you find the right click menu not working for some reason you can type the following in cmd to sign your files: java testsign whateverfiletosign
Now right click the reg file that you extracted and choose to install it, or merge.
Now, right click an apk, do you see an option that says ResignApk? If not hit the windows key and R at the same time. Type in regedit. go to HKEY_CLASSES_ROOT and expand it. Now find .apk and click it. Double click on (Default) and erase apk_auto_file. Hit ok and close the Reg editor. Now right click an apk and the option ResignApk should be there.
Now through doing this you have done two things, first off you have made the resigning process extremely easy, secondly you will not have to cd to the tools dir of the sdk to use adb or any other tool in the sdk.
You will also need a version of linux installed or running vmware with linux, so that you can create an update file which will install the theme onto the users phone.
You need to make sure that you do this correctly, because if you don't then you will have the potential to create problems for people trying to install your theme. You also need to be specific in addressing what version your theme is for, RC8, RC30, or ADP1. Make sure every file gets signed. Make sure you test the update.zip before you release it.
Every .apk contains the images relating to itself. However, every apk has the ability to use the images in framework-res.apk. The images for every apk is located inside of res and more specifically in folders that are named Drawable, drawable-land, drawable-port, etc. Some things you cannot edit unless you rebuild the entire apk from source, which we will not go into here.(another tutorial, another time) Just know that at this time you SHOULD NOT edit, or even open images with the extension .9.png. If you do you will have problems...Trust me. These are special images called ninepatch images and android resizes these images to fit wherever android, or any other apk, needs it to. if you do open them or edit them they will no longer render correctly when resized. I believe that in order to edit these you must do so and then put them into the source and rebuild the entire apk.
Before getting started you must also realize that you cannot simply resign one or two apk's and stick them in your phone and expect them to work. You must resign every apk inside of /system/app and framework-res.apk and put them on your phone at the same time.
To simplify this process for you though, I have provided an update which will do all of this for you. Note that these updates will not completely wipe your phone, your apps will be retained, however, they will require you to re-enter your Google info, and you will lose you call history.
Links down
Just put the correct update.zip, depending on what version you are running, onto your sd card, boot into recovery and hit alt + s.
Now you can push your own apk's one at a time without re-wiping your phone.
Now, your ready to start changing things up.
You will now need to open the apk, which you can do by adding .zip after .apk, effectively changing it to a zip. Note that if you are using windows you will need to unhide known file extension types.
See here to unhide known file extension types for Xp: http://www.mediacollege.com/microsoft/windows/extension-change.html
See here to unhide file extension types for Vista: http://maximumpcguides.com/windows-vista/how-to-change-a-file-extension/
After changing the apk to a zip open it go to res and copy the folders that have drawable in their name. Go to your desktop, or wherever, create a new folder called Images, or whatever. Open the folder, paste the drawable folders in there. Now you can see what the files look like without opening them. Btw, you may also want to add -frame, or -launcher, to the end of the folders you cope over to keep them separated from others.
Finally, you've edited the images put them all in the apk renamed it back to an apk and resigned it. Now it's time to push it to your phone and see the changes you've made.
Important! : Whenever pushing files to the phone NEVER do it while the phone is running. Do this in recovery mode! If you do this while the phone is running normally you will begin to lose space in /system.
So, boot into recovery plug your phone in and open a cmd prompt. From the cmd prompt type adb shell mount /system then type the following: adb push c:\whereveryourfileis\whateveryourpushing.apk /system/app (system/framework if your pushing framework-res.apk)
Now reboot your phone. If it doesn't boot, try doing a wipe, if that doesn't work reinstall an update and try again. There are alot of things people can do wrong, I can't explain them all here. If you get real stuck, you can ask for help here or contact me on Gtalk [email protected].
So now your theme is done and your ready to make an update.zip for others to install your theme.
This must be done in LINUX! Not WINDOWS! Yes it may work for you if you do it in windows but other people's phones will enter an indefinite loop! Just do it from Linux! If you absolutely cannot make your own update.zip, contact me and we'll see if I can make one up for ya.
I have created a template for you to make your own update.zip. Just download, open in Linux, and add the system apps to app, and framework to framework. Zip it up, SIGN IT, TEST IT YOURSELF, and then distribute it!
Empty update.zip template: Http://www.FightForthePits.com/Androidstuff/update_empty.zip
If anyone has any questions please try asking for help in this thread before emailing me for help Usually I will respond to questions in this forum.
I hope this Tutorial has been helpful. I will add on to it as needed.
Stericson
Links of interest:
Downloading SDK: http://code.google.com/android/intro/installing.html
Using ADB: http://code.google.com/android/reference/adb.html
Working with ninepatch should be straightforward if you use the draw9patch tool included in the SDK. Documentation on usage here:
http://code.google.com/android/reference/draw9patch.html
JF could also save theme users a wipe by resigning /system/app/* and /system/framework/framework-res.apk in his builds with the test keys. Nice tutorial, btw.
However it doesn't. I have used that to no avail. I believe you need to edit the images, put them in the source then rebuild the apks from the source.
As for JF's update, it does not currently wipe your phone after install. So, for him to do this he would have to have his update do a wipe. So technically, they would still have to do this initial wipe.
Stericson
Stericson said:
However it doesn't. I have used that to no avail. I believe you need to edit the images, put them in the source then rebuild the apks from the source.
Click to expand...
Click to collapse
Good point. I thought you could simply drop a similarly dimensioned PNG in but apparently there is some metadata that only the android tool can create.
As for JF's update, it does not currently wipe your phone after install. So, for him to do this he would have to have his update do a wipe. So technically, they would still have to do this initial wipe.
Click to expand...
Click to collapse
True, but a user who is upgrading to a JF update after having put in customized (and test-key signed) system apps will have to wipe again anyway =) Anyone using custom themes will have to wipe every time a JF update (or any update) comes out. However if JF resigns, custom theme users would not have to wipe and stock theme users only have to wipe once. (Nevermind the fact I think everyone should wipe when updating...)
thx stericson this will help big time how long before I can get resigned rc30 last night when you said all the apk. need to be resigned I was like this is going to be a long night but I see jf hooked you up save some big time with his resigning tool
jashsu said:
Good point. I thought you could simply drop a similarly dimensioned PNG in but apparently there is some metadata that only the android tool can create.
True, but a user who is upgrading to a JF update after having put in customized (and test-key signed) system apps will have to wipe again anyway =) Anyone using custom themes will have to wipe every time a JF update (or any update) comes out. However if JF resigns, custom theme users would not have to wipe and stock theme users only have to wipe once. (Nevermind the fact I think everyone should wipe when updating...)
Click to expand...
Click to collapse
Ah, good point
The resigned apps will be released maybye sometime tonight...I had them done but ran into a script problem on adp1 and I have yet to try the rc30 and rc8 ones yet. so I won't release those until I've tested them. If you want to be a Guinea pig however, just let me know
Stericson
Stericson said:
Ah, good point
The resigned apps will be released maybye sometime tonight...I had them done but ran into a script problem on adp1 and I have yet to try the rc30 and rc8 ones yet. so I won't release those until I've tested them. If you want to be a Guinea pig however, just let me know
Stericson
Click to expand...
Click to collapse
The resigned apps have been released, each update file will resign all of apps in /system/app and framework-res.apk. However, these updates make no changes to them whatsoever...Meaning your phone will look just like a brand new phone without any modifications.
rc30 works thx Stericson made it easy for use
Issues with using the update.zip above
Hi all,
I just wanted to point out that after I applied the update.zip above and rebooted applications kept force closing randomly and constantly even through the initial setup (where you have to click the green android to start).
Prior to this, I had JF's RC30 1.3, and the engineering bootloader V2 no sigcheck.
First I did just a alt+s then a alt-w and alt+s. And still nothing.
I'm new to all this so I'm not even sure where to begin troubleshooting. Should I be using the HardSPL?
Thanks in advance and I appologize if this isn't the right place for this post.
Update:
After reflashing with JF's 1.3 RC30 and the problem persisted I noticed that there was a new release 1.31 and this has fixed the problem. I hope this helps anyone else who runs into the same problem.
I still don't know what went wrong though, can anyone shed some light on this? thanks.
Truly there's no telling, sounds like J'f's update fixed it. Can I ask what version you tested?
I would also like to announce that now, thanks to JF, again, you do not have to wipe your phone completely to apply the resigned app updates. However, you will have to re-enter your google info and your call history and other minor things will be gone, but all of your apps will be retained.
Stericson
Stericson said:
Truly there's no telling, sounds like J'f's update fixed it. Can I ask what version you tested?
I would also like to announce that now, thanks to JF, again, you do not have to wipe your phone completely to apply the resigned app updates. However, you will have to re-enter your google info and your call history and other minor things will be gone, but all of your apps will be retained.
Stericson
Click to expand...
Click to collapse
Hey, I tested it with this one:
Rc30 resigned: http://www.fightforthepits.com/Andro...pdate_Rc30.zip
Update went fine, until I booted back up then the applications kept force quitting, without me even doing anything.
Thanks,
Limitlis
yes there is a temp problem with those right this moment I am on the problem as we speak, expect a fix tonight...
Stericson
Can we get the fix cuz it bricking fone I had to flash rc29 nbh
Edit: I forgot please.... feel kinda rude when ur helping me out lol but it bricking some phones and for our less experince members we don't global meltdown lol
These files have been fixed and uploaded.
Stericson
I found the cyclon boot effect images in in framework-res/assets/images,
is there any way to replace the android boot image with those images?
Is there anyway to make the theme with a custom boot screen? Also is there a way to change the second boot screen(The one that says Android and has the little robot)
i tried using the testkeys from JF to resign my apks, but the update still says there is not signature =[
hello, I used the tutorial and everything worked great. I'm trying to change the background to the notification section but I can't find that file. Could you tell me where it is? Thank you.
hey stericson, how do u create a theme for rc33?

[MOD] Android Battery Icons [Metamorph]

Please delete this thread.
Im keeping this on my phone forever!
how do you get this to work it aborted when flashing in recovery??
Okay here's the thing. It's not flashing in recovery because you are missing the update-script (usually found under a few subfolders within the meta-inf folder. take a look at someone elses update.zip (for anything, theme, rom, some of my keyboard themes etc) and you should find what I'm talking about.
Second problem, the framework-res.apk you provided contains only your changes. Had this successfully flashed, you'd now be boot looping as your framework-res.apk would be jacked up.
I took your images and made them into a morph (hope you don't mind, I put your name on the "author" line). I just applied it via metamorph and it's working great!
Benefit to this is it *should* be cross rom compatible, and shouldn't need any updates (whereas if you built a true update.zip that contained all of framework-res.apk, you'd have to update it every time it changed and release different versions for different roms).
Feel free to grab this attachment and throw it on first post!
remember, it's a metamoprh, you must have metamorph from the market to apply it!
kamikazimonky said:
how do you get this to work it aborted when flashing in recovery??
Click to expand...
Click to collapse
Right now unfortunately you can't flash through recovery yet.
I am hoping to have a fix for that later tonight.
See post above. You can now use this with Metamorph thanks to gIMpSTa.
LOL....
This is great!
One thing though, can you make it a bit more discernable for us colour blinds?
hmmm I posted this on the MORPH thread yesterday!
http://forum.xda-developers.com/showpost.php?p=6056140&postcount=7
If you want to get a mod to delete my post and put yours in there that would be fine by me.
I have no idea how to delete this off my captivate. I reset my phone, format internal sd and reflashed the unleashthebeast rom. Please help me. Its still there! I want the original battery icon back

Ultimate One Click Theme Injector (Teaser 1/15) Screenies... Need some feed back!

New Ultimate Version
I'm looking for some feed back and interest in a gui version of this app, below are some screnshots. Currently I have written interfaces for Optipng, Apktool, ADK, Z7a and a buncha other theming tools. Think of this new version as a way to manage your themes and roms in a workspace like setting, where files will show up in a explorer like ui.
Please ask questions and make suggestions Please!
READ THIS FIRST:
UPDATE 9 PATCH TWEAKS:
This new version will port your favorite hdpi theme to an mdpi rom... yes 9 patch resizing. I want to be the first to say this is not 100% and it probably never will be, and over the next couple of days we can discuss this.
What it will do is resize every 9 patch in a rom and move it over to the mdpi theme. Yes this is the same method I used for all my hdpi ports.
What it might not get is the 9 patching data correctly, which means that it might get stretched incorrectly, most times you won't noticed but others it will be obvious. This will happen anywhere from 1% to 30% of the 9 patch pngs in a port, but all you will need to do is redraw them using the 9 patch draw tool in the adb folder.
Please respect other peoples work. If you port a theme using this and repost it don't just link back to the op... mention the author and give them props.
Also want to say I spent a looooong time trying to figure this out, and I tried many different ways, and I'm open to others suggestion on making this better
Oh and don't forget to to install Image Magick, its included and the HDPI to MDPI will not work without this.
This tool will take your favorite theme and inject it into your favorite rom... provided they are compatible with each other (might work if they aren't but thats for later). I did this cause alot of themers and people who like themes are always waiting for the nightly theme to get applied, well this will do it for you.
You can think of this as almost a theme installer.
INSTRUCTIONS by Norm12:
1. Download and extract.
1.5 Install image magick from the image magick folder... just run the installer and its ready to go. This is important the hdpi to mdpi will not work without it.
2. Copy both the theme and rom into the 1 click folder---the extracted one.
3. Open the 1-click folder and you should see your theme, rom, lib folder, and the injector script.
4. Doubleclick on the injector script----if you did everything correct it will open a cmd prompt
5. Enter the names of the rom and theme when asked...I did use the exact names and added ".zip" to the end.
5.5 Answer y if this is an hdpi to mdpi port otherwise n.
6. Hit enter and wait. When it is really done it will auto-close the cmd prompt. This may take 15 minutes.
7. Your newly themed rom will be in the same folder as the unthemed rom and theme zips. If it worked it should be slightly larger than the original rom. Enjoy
!!!IMPORTANT... BECAUSE 7ZIP SHOWS OUTPUT IGNORE THE "EVERYTHING IS OK" LET THE SCRIPT FINISH WHEN ITS DONE IT WILL CLOSE ITSELF IF YOU DOUBLE CLICKED IT OR IT WILL RETURN TO COMMAND PROMPT!!!
Ignore any errors your seeing while it runs, this is normal like before let it run completely through till it closes out.
Run time could be up too 20 minutes (60 with HDPI to MDPI) on a big theme/rom, but faster that waiting!
You must now install Image Magick if you would like to use the hdpi to mdpi resizing!
ISSUES:
There also seems to be an issue with the gallery3d.apk and the differences in the mdpi and hdpi version. For now remove this from the theme your porting otherwise it won't come out right.
Update 4:
HDPI to MDPI porting!!!!!
Update 3:
Removed verbose but added optopng verbose just let it run. It works but you have to let it finish, the cmd window will close it self.
Update 2:
Added verbose output so that you guys will know to close it out before its done...even tho 7zip says everything is ok... just let it do its thing.
Update 1:
Had the optimization stuff commented out... sorry its back on.
Script will clean up now after it finishes.
JAVA CLASSPATH:
Its needed for the signer to work properly goto a command prompt and type in java -version. if you get and error back java is not in your classpath and needs to be.
just right click on my computer, then goto properties, then click on the advanced tab, at the bottom click on the "Environment Variable" button.
Now click on the new button... the one on the bottom for system variable and put in this
variable name: JAVA_HOME
variable value: C:\<path-to-where-java-is>
Now click ok and select the path system variable and then click edit. IMPORTANT only append to the end of the value this... ;%JAVA_HOME%\bin
then click ok and ok out of all those windows and open a new command prompt and type java -version you should get no error if you do your path to java was wrong follow the steps above again and make sure the path is correct.
WHAT THIS WON'T DO:
It won't port over xml or smali edits.
It wont port over what it can't find... so if your theme has a facebook widget or something but the rom does not then it will ignore that.
It will not port over fonts or anything other than the framework-res.apk and all the themes apks in the system/app folder. If this is popular Maybe other stuff can get included.
WHAT THIS WILL DO:
Shrink a 9 patch from HDPI size to MDPI size.
Push over all the themes pngs from the apk with it to the roms matching apk.
Optimize every png in the theme you are porting over.
Zip align all the apks in your newly themed rom.
Sign the newly themed rom.
Give me feed back.
I might make this easier and make the injector steal the apks for injection right from your phone and then inject and make a flashable to put right back on... tell me what you think.
New HDPI to MDPI version (v2) with 9 patch porting download here
Screenies from Ultimate One Click Theme Injector
This is great, going to give it a try! Want to use steel my elegance on AOSP mod!
pwachleman said:
This is great, going to give it a try! Want to use steel my elegance on AOSP mod!
Click to expand...
Click to collapse
Nice this is what I made it for... so sorry but I just noticed that I forgot to attach the program. Its up now.
What does yours do that this one doesn't do? I'm just curious because this one will re-size the png's.
ehac1680 said:
What does yours do that this one doesn't do?
Click to expand...
Click to collapse
well it optos and zip aligns annnd it signs all in one step. while I have looked at that one a while back it has been buggy (it might not now haven't really checked).
So while this isn't necessarily a porter per say. its one step and alot easier to use than that, and it does the extras like zip aligning all the apks, optos and signing. Your finished product is ready to be flashed.
Its your choice!
Edit:
While I do have a technique for doing hdpi to mdpi even the 9ptach, its buggy and reallies on assumptions.
I know for a fact that his does not work (or barely works just read the thread) for hdpi to mdpi and is over all very tricky to use. While mine does not include the hdpi to mdpi I might include that later to my one click suite of tools. But I can tell you 9 ptach porting is likely impossible at best mine will port a 9patch but in about 5-15% of the time is gets bad patch data because of the method I use to port it.... witch I can tell you is the only way you can do it.
Mine will also work across roms and if you guys want I'll put the theme porting code in even the 9patch resizing... so you guys can se my super secret method of porting 9patch pngs.
ehac1680 said:
What does yours do that this one doesn't do? I'm just curious because this one will re-size the png's.
Click to expand...
Click to collapse
So wait is that what you used to do Black and Gold?
ASimmons said:
So wait is that what you used to do Black and Gold?
Click to expand...
Click to collapse
No, I didn't find this until after I ported Black and Gold. Would of been very helpful if I had used it. This doesn't re-size the .9's but it does port them over. I have been using it to put theimpailers changes into the nightly though.
Well try it out and tell me if you think his is easier to use... i made it specially for making nightlies easier to theme.
Does his zip align and optimize... does it produce a final flashable product? All mine needs are the 2 zips (theme and rom names) and the rest is done.
Sent from my PC36100 using XDA App
ASimmons said:
Well try it out and tell me if you think his is easier to use... i made it specially for making nightlies easier to theme.
Does his zip align and optimize... does it produce a final flashable product? All mine needs are the 2 zips (theme and rom names) and the rest is done.
Sent from my PC36100 using XDA App
Click to expand...
Click to collapse
I'm definitely going to try it. It sounds like it will make updates to the nightlies easier, if there ever is a successful one again
Sent from my HERO200 using XDA App
well tried to put Steel My Elegance with darchdroid 2.8.. it did everything with no errors.. but when after I flashed the zip. it just stayed at the htc boot screen...
spiritcrusher33 said:
well tried to put Steel My Elegance with darchdroid 2.8.. it did everything with no errors.. but when after I flashed the zip. it just stayed at the htc boot screen...
Click to expand...
Click to collapse
hold on let me try and see what happened give me a few minutes.
Edit:
So it never got to bootanimation?
Were you going to this rom from another?
How long did you wait for it at the splash screen.
The reason I ask is that this will only push over pngs and shouldn't in anyway affect the rom, save for the new pngs. The only thing I can think of is that you might want to wipe dalvik and data before if your coming from another rom.
I let it sit for bout 10 mins.. etc. then just nand back.
im currently running dd 2.8.
so after it compiled the new theme zip.. i just copied it to my sd card and flashed it..
unless im missing something etc.
So basicly u take the theme.zip and the rom.zip.. tell your script the locations. etc. and then it does its thing..
then take the theme.zip ( before renaming it ) and flash that. correct?
Im gonna try another theme and see what happens...
spiritcrusher33 said:
I let it sit for bout 10 mins.. etc. then just nand back.
im currently running dd 2.8.
so after it compiled the new theme zip.. i just copied it to my sd card and flashed it..
unless im missing something etc.
So basicly u take the theme.zip and the rom.zip.. tell your script the locations. etc. and then it does its thing..
then take the theme.zip ( before renaming it ) and flash that. correct?
Click to expand...
Click to collapse
Ok not sure if you got it backwards but just in case. The script will take the theme and the rom and push the theme into the rom. the final output will be the rom with this appended to the front of the name... themed-darchdroid-v28.zip and that you can flash to your system. You don't need to rename or anything just put themed-darchdroid-v28.zip on your sdcard and flash it to your system.
I can check when I get home and see what happens when I flash it since I don't have my hero on me.
here is whats in the folder once its complete..
im at work so.. dont have too much time to mess with it..lol
spiritcrusher33 said:
here is whats in the folder once its complete..
im at work so.. dont have too much time to mess with it..lol
Click to expand...
Click to collapse
oh it seems to be failing then, since the theme.zip and rom.zip are temporary and used by the script to make changes on.
Try this, copy darchdroid-v28.zip into the folder and sme6_signed.zip into the folder then run the script and give those names when asked for them.
The final output should be "themed-darchdroid-v28.zip" I just ran it and the resulting rom looks fine... I can test it of course but will try when I get home.
ok will try that. thanks man.. brb..
All I get are the theme.zip and rom.zip, never outputs the final product. Not sure what I am doing wrong.
jtpterp said:
All I get are the theme.zip and rom.zip, never outputs the final product. Not sure what I am doing wrong.
Click to expand...
Click to collapse
hmm not sure why... been using this script for months now. Try this
1. copy your rom into the folder.
2. copy your theme into the folder.
3. tell the script the names (i.e. my-theme.zip, cm6.zip)
4. let script run.
Final output should be themed-<nameofrom>.zip this is your flashable.
How long after the "everything is ok" message appears does it take to complete?
Maybe i'm just not be patient enough
tried your method.. and like the above.
theme.zip and rom.zip, never outputs the final product
im stumped....lol maybe I will try on my pc at home.

[How To] Basic Themeing

This is a very basic guide to beginning themeing. It is not meant to be all-inclusive, just some simple steps that can be taken to make your own custom theme fairly easily. This guide should allow anyone to be able to grab images they like from any ROM and incorporate them into their own.
I SUGGEST YOU ALWAYS MAKE A BACKUP OF ANY FILE BEFORE YOU THEME IT AND NANDROID FIRST BEFORE FLASHING
Here is a basic overview of changing images in an apk:
1. Get your base file to theme – framework-res.apk, com.htc.resources.apk, phone.apk ect.
2. “Open” apk archive with 7-zip (don’t unzip!) and drag and drop the new images into the appropriate folder.
3. Flash new file.
Now some details:
1. The first step is to obtain the file you are going to theme. The file you are themeing ( i.e. going to flash to your phone) must come from the ROM you are currently running. Always use files from your current ROM as a base, however the images you want to change can come from other ROMs, or you can edit existing ones or make your own from scratch. You can obtain your theme base through an ADB pull of the files from your phone, or simply downloading the ROM zip file and extracting the files you need.
2. Now that you have the file to theme, don’t touch it! OK, more specifically, you won’t unzip or do anything to this file except “open” it with 7-zip (unless this is a market app, but more on that later). You are going to drag and drop the new icons into this file by “opening” it and navigating to the appropriate folder. The images you want to change are stored in the apk under /res/drawable-hdpi. Once you have your new icons from other sources, open your base file and navigate to this folder and drop them in.
3. Now you can flash this new file. I have provided empty zip files that you can place your themed files into and flash in recovery. Place your framework-res.apk and/or com.htc.resources.apk into the /system/framework folder located in the zip file provided. Now highlight the META-INF and system folders and zip them up. You can now place this file on the root of your SD card and flash. System apps can be placed under /system/app in the zip file.
Some more info on common themeable files:
Framework-res.apk – this is the meat and potatoes of a theme. On an AOSP ROM it will contain almost everything you want to theme aside from individual apps themselves. Sense ROMs have another file com.htc.resources.apk, as well as framework-res.apk. Both of these files are located in a ROM under /system/framework.
System apps: These apps come packaged in a ROM under /system/apps. They can be themed in the same manner as a framework apk. Some of these apps include Gmail, browser, camera, ect. Place them in your flashable zip under the folder /system/app.
Market apps: These apps are downloaded from the market and are can be pulled from your phone from /data/app. These files require a bit more to theme. They don’t share the same signature as the system apps and you must resign them using a program such as apkmanger. Place them in your flashable zip under /data/app.
If there are any errors, or if anyone has suggestions please let me know. I may have over looked some details, ect.
Thanks to everyone on XDA who has shared their knowledge and made this a great community!
Thanks that will be helpful
Sent from my PC36100 using XDA App
so using this guide we can pull parts and what not from other elements of themes we like and create our own framework to push back? Also, based on what you have, shouldn't it be easy to put this up on bid for hire (?) website to create a program to automate that?
xlGmanlx said:
so using this guide we can pull parts and what not from other elements of themes we like and create our own framework to push back? Also, based on what you have, shouldn't it be easy to put this up on bid for hire (?) website to create a program to automate that?
Click to expand...
Click to collapse
Yes the idea of this guide was to help people pick and choose icons they like in other ROMs and add it to their own. I'm not sure what bid for hire is?
its a website where you can load your requirements and folks can bid to do your work
linky
nukedukem said:
Yes the idea of this guide was to help people pick and choose icons they like in other ROMs and add it to their own. I'm not sure what bid for hire is?
Click to expand...
Click to collapse
xlGmanlx said:
its a website where you can load your requirements and folks can bid to do your work
linky
Click to expand...
Click to collapse
Interesting. Didn't know anything like this existed.
Sent from my EVO (CM6.1) using XDA App
Thank you, thank you!!!! I've been looking for something like this for a while.
evolishesh said:
Thank you, thank you!!!! I've been looking for something like this for a while.
Click to expand...
Click to collapse
No prob. Let me know if it works for you.
I couldn't get the auto signing to work, but the manual way of doing it worked.
Hmm, I got a boot loop on first try and doing this. Does that mean something went wrong with the signing, or that what I created for the theme was wrong? I used the empty .zip folder and re-zipped it, so I don't think that is the issue.
JasonK75 said:
Hmm, I got a boot loop on first try and doing this. Does that mean something went wrong with the signing, or that what I created for the theme was wrong? I used the empty .zip folder and re-zipped it, so I don't think that is the issue.
Click to expand...
Click to collapse
The signing should be ok. If you are using Amon_ra recovery it wont let you flash an unsigned zip I believe. Are you on sense or AOSP? Are you editing images or just copying from other ROMs?
What you might want to do is just create a simple test file. Change just one image and then flash that. That should let you know that your process is correct.
I using Amon Ra and using AOSP. I was moving some items out of a sense ROM so I guess that is where I might have went wrong. I think I'll take your advice and move just a single image and see how that works for me. Thanks!
I tried again this time I ended up stuck at the EVO white screen. I'm guessing it doesn't like the sense part I'm trying to throw in there. I'll have to try again with a AOSP theme instead.
Sent from my EVO (CM6.1.1) using XDA App
A couple things to look out for when swapping sense/CM icons - some file names are slightly different between sense and AOSP. Rename any sense icons to their AOSP counterparts and vice versa. Also, double check the image size of the icon is the same in both, i.e. 70x70 pixels, ect. and make sure you are not adding images that don't exist normally in the framework. For example there wont be any 4G icons in CM framework.
Also, make sure you aren't unzipping the new framework-res.apk you want to theme and flash, or trying to resign it. Only sign the flashable zip, not the individual files inside. The only thing you want to do with the framework-res.apk you will package and flash is open (not unzip) with 7-zip and navigate to the res/drawable-hdpi folder so you can drag and drop the new icons into it, overwriting the old.
I hope that helps!
How important is it to re-sign? I have modified the Framework and Resources apks with 7zip by switching images out. I have also modified the Rosie.apk. I put everything back where it was supposed to go, backed out of 7-zip and flashed. I have never had an issue with it, nor have I re-signed it. Just wondering.
spence341 said:
How important is it to re-sign? I have modified the Framework and Resources apks with 7zip by switching images out. I have also modified the Rosie.apk. I put everything back where it was supposed to go, backed out of 7-zip and flashed. I have never had an issue with it, nor have I re-signed it. Just wondering.
Click to expand...
Click to collapse
AFAIK if you are on clockwork recovery, I don't think it checks for signatures. I think Amon_ra requires a signed file to flash. I think it's just added protection against flashing any old junk. If you can flash in amon_ra without a signature and you don't have problems then I wouldn't worry about it. It's the signature of the framework-res.apk ( or com.htc.resources.apk) that's important. That's why you don't unzip it.
I think that
1.7.0.2 = yes
1.8 = no
nukedukem said:
AFAIK if you are on clockwork recovery, I don't think it checks for signatures. I think Amon_ra requires a signed file to flash. I think it's just added protection against flashing any old junk. If you can flash in amon_ra without a signature and you don't have problems then I wouldn't worry about it. It's the signature of the framework-res.apk ( or com.htc.resources.apk) that's important. That's why you don't unzip it.
Click to expand...
Click to collapse
nukedukem said:
A couple things to look out for when swapping sense/CM icons - some file names are slightly different between sense and AOSP. Rename any sense icons to their AOSP counterparts and vice versa. Also, double check the image size of the icon is the same in both, i.e. 70x70 pixels, ect. and make sure you are not adding images that don't exist normally in the framework. For example there wont be any 4G icons in CM framework.
Also, make sure you aren't unzipping the new framework-res.apk you want to theme and flash, or trying to resign it. Only sign the flashable zip, not the individual files inside. The only thing you want to do with the framework-res.apk you will package and flash is open (not unzip) with 7-zip and navigate to the res/drawable-hdpi folder so you can drag and drop the new icons into it, overwriting the old.
I hope that helps!
Click to expand...
Click to collapse
Thanks, any advice does help.
I did make sure the the icons I was swapping out were named the same thing in the CM ROM, but I didn't check the size of it at all.
I didn't unzip the famework-res.apk but instead just went into it with 7-Zip and dragged the icons into that. Then I backed out of 7-Zip so that it would save and close everything properly - know that does work because that is how I add the Fold transistions to the ROM - and then I put the famework-res.apk into the folder and zip it up per your instructions above. Then I manually sign it (still haven't been able to get the auto-signing to work) and then flash.
I'll have to try again moving a CM theme to the CM framework-res.apk and see if it is working. What I was attempting to do was take, from the Batman Theme for sense, the drop down notification shade with the Bat Icon and put it into the CM ROM. I don't know if you have time to try it yourself to see if it works, or if you get the same issues that I had.
Either way, thanks for the help! I know I'll get this theming down at some point!
nukedukem said:
No prob. Let me know if it works for you.
Click to expand...
Click to collapse
Hey buddy.
I’m stuck. I had to download and install Eclipse with the sdk plus java. I don’t know where to go from there. Every time I open the rom that I want to theme and get the framework.apk and edit the PNG’s , how do I go about saving them? Do I just used the same name as the old ones or I have to save them with a new name.
Or pm Me.
xlGmanlx said:
I think that
1.7.0.2 = yes
1.8 = no
Click to expand...
Click to collapse
So the new amon_ra doesn't require a signed file to flash? I'll make a note off that. Thanks.
JasonK75 said:
Thanks, any advice does help.
I did make sure the the icons I was swapping out were named the same thing in the CM ROM, but I didn't check the size of it at all.
I didn't unzip the famework-res.apk but instead just went into it with 7-Zip and dragged the icons into that. Then I backed out of 7-Zip so that it would save and close everything properly - know that does work because that is how I add the Fold transistions to the ROM - and then I put the famework-res.apk into the folder and zip it up per your instructions above. Then I manually sign it (still haven't been able to get the auto-signing to work) and then flash.
I'll have to try again moving a CM theme to the CM framework-res.apk and see if it is working. What I was attempting to do was take, from the Batman Theme for sense, the drop down notification shade with the Bat Icon and put it into the CM ROM. I don't know if you have time to try it yourself to see if it works, or if you get the same issues that I had.
Either way, thanks for the help! I know I'll get this theming down at some point!
Click to expand...
Click to collapse
OK I'll try and do what you are trying to do and see if it works...
evolishesh said:
Hey buddy.
I’m stuck. I had to download and install Eclipse with the sdk plus java. I don’t know where to go from there. Every time I open the rom that I want to theme and get the framework.apk and edit the PNG’s , how do I go about saving them? Do I just used the same name as the old ones or I have to save them with a new name.
Or pm Me.
Click to expand...
Click to collapse
So now you have an unzipped framewor-res.apk with a bunch of images. This framework should be the one that you want to take icons from. If not, start over with the ROM you want to copy images from. You will want to copy the images you want to put into another ROM so that you can dump them into the new framework-res.apk. After you figure out what icons you want to bring to your new framework, get a clean version of framework/com.htc from the ROM you are actually running - i.e. if you are running myn ROM on your phone, download the myn ROM and pull out the framework-res.apk or com.resources.apk that you are going to theme.
Now with this fresh clean framework you will "open" it with 7-zip to navigate to the /res/drawable-hdpi folder so you can now drag and drop the images you want to copy over into it. Then the close the 7zip window and your framework-res.apk is all set to flash. You don't need to rename if the file names are the same, you can just drag and drop and the files will be overwritten in the new framework.

[Q] Icon location and question to themers about framework-res.apk

Well I've started theming myself since I wanted a Windows Phone 7 Theme and learning as I go along but I've come across a few hurdles.
1. How do I push framework-res.apk without losing configurations like my email/gmail set up or wallpaper being back to default?
2. Where do I find the icons for the top right voice search and search buttons? I've found a couple that look identical within the files but when I change them nothing happens.
3. Any good guides or tools on how to make a flashable zip? I used to just use a script to make an updater script but it doesn't work anymore since they changed it to edify. I'm a lowly designer and can't figure out how to make a working updater script.
Thanks in advance.
Bump to the top.
and another bump ):
hope this helps...
seshmaru said:
Well I've started theming myself since I wanted a Windows Phone 7 Theme and learning as I go along but I've come across a few hurdles.
1. How do I push framework-res.apk without losing configurations like my email/gmail set up or wallpaper being back to default?
2. Where do I find the icons for the top right voice search and search buttons? I've found a couple that look identical within the files but when I change them nothing happens.
3. Any good guides or tools on how to make a flashable zip? I used to just use a script to make an updater script but it doesn't work anymore since they changed it to edify. I'm a lowly designer and can't figure out how to make a working updater script.
Thanks in advance.
Click to expand...
Click to collapse
1. grab an old zip for a system/framework file
toss the previous file(s)
toss in your new edited framework res
resign using this and this
flash via recovery
2. let you know when i get a chance to look.
3. grab apk manager.
MagnusRagnarok said:
1. grab an old zip for a system/framework file
toss the previous file(s)
toss in your new edited framework res
resign using this and this
flash via recovery
2. let you know when i get a chance to look.
3. grab apk manager.
Click to expand...
Click to collapse
1 is as simple as that? Sweet.
Also I have apk manager and Update zip packer but they use the old updater script ): But if I can simply use other peoples update script and replace their files with mine then that shouldn't be a problem, thanks for the help.

Categories

Resources