Related
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.
After going through many of the different lock ring tutorials, I have noticed that they all have something in common: They are too user intensive and prone to user-error. Sure, once you have it down, it's easy. But it can be daunting to start out.
All I have done here is make it EXTREMELY user friendly.
No more copying and pasting into ZIPs and APKs!!
No more fishing around the Templates tree in M10 Tools!!!
Simply run the BATCH file, get a cup of coffee, and then flash!
Here are the detailed instructions... (also in the Read-Me)
0. Make sure you have installed Microsoft .net 4 framework on your machine.
http://www.microsoft.com/net
1. Unpack User_Friendly_Lock_Screen_Kit_v1.04.zip (Where you put the file does not matter anymore!!!! For example purposes, I will use C:\Lock_Ring_Kit)
2. Copy your image into C:\Lock_Ring_Kit and name it LockRing.png
Image requirements:
a. Must be a PNG file
b. Image must be 271 x 270 pixels (If it is not the right size, it will come out looking funny (270x271 WILL NOT WORK)
c. The image must be rotated 180 degrees and reflected horizontally.
3. Double-click "LockRingCreator.bat" and let it do its thing.
4. Flashable.zip was just created for you. Rename it whatever you wish.
5. Copy it to the root of your SD card, boot into recovery, and flash
The BATCH file cleans up after itself. You don't have to go through and delete any of the old files. If you want to make another one, just change out the PNG and run it again. My desktop is pretty old, and the BATCH takes about 2 minutes to run.
I have only tested this on Synergy, but I assume that it will work on similar ROMs. I also believe that it will work on the Thunderbolt (can someone confirm that?)
All files are included in the ZIP.
User_Friendly_Lock_Ring_Kit_v1.05.zip
Error Reporting
This is a work in progress. If you have an issue, please post it on the thread. Also, please copy and paste the output from the command prompt so we can get to the bottom of it. (Right click on command prompt, Select All, the then press ENTER. It is now ready to paste.)
Acknowledgments:
jmaher1023 - I used his process as a template. All that my BATCH file does is automate his process
Flemmard and DiamondBack2010- I have no idea what M10 Tools does or how much trouble they had to go through to make it, but I do know that it is the heart and soul of this whole operation.
Confirmed ROMS
Gingeritis3d
Synergy RLS 1
InCompatible ROMS
Kinged Shooter RLS 2.3
I'll try this out, thanks alot dude.
One thing you didn't mention is that the images still need to be 271 X 270 or they won't look right. Other than that this works on Gingeritis3d. (And if I want to say I was the one to create the lock ring I might edit the script) lol. Very good work though man. Very useful tool. Have you been able to find where the images are located for the Amazing sense skin? I haven't found those yet and want to use that semi transparent tool bar at the bottom but dont want to use a different launcher
somehow i cant get it to work ive followed every step but when i run the
"LockRingCreator.bat" it just goes into cmd really fast and nothing happens
TDubKong said:
One thing you didn't mention is that the images still need to be 270 X 270 or they won't look right.
Click to expand...
Click to collapse
Fixed in OP. I put that in the ReadMe, but forgot it on the thread Thanks for the reminder.
TDubKong said:
Other than that this works on Gingeritis3d.
Click to expand...
Click to collapse
Thanks for letting me know. I'll add a lit of confirmed ROMS that this works for.
TDubKong said:
(And if I want to say I was the one to create the lock ring I might edit the script) lol.
Click to expand...
Click to collapse
Navigate to C:\Lock_Ring_KitTemplate\META-INF\com\google\android
There is a file named "updater-script" Rename it updater-script.txt, and open it for editing. Just look for my name and replace it with yours. Make sure you take the .txt off after saving
TDubKong said:
Have you been able to find where the images are located for the Amazing sense skin? I haven't found those yet and want to use that semi transparent tool bar at the bottom but dont want to use a different launcher
Click to expand...
Click to collapse
No Idea
IDRFT95S14 said:
somehow i cant get it to work ive followed every step but when i run the
"LockRingCreator.bat" it just goes into cmd really fast and nothing happens
Click to expand...
Click to collapse
What operating system are you running? Do you have Microsoft .net 4 framework installed on your system?
When it is working properly, after you run the BATCH file you should see a command window running various commands for a little while.
did you
IDRFT95S14 said:
somehow i cant get it to work ive followed every step but when i run the
"LockRingCreator.bat" it just goes into cmd really fast and nothing happens
Click to expand...
Click to collapse
did you make sure the file was named LockRing and was a png format? Something else to consider is that if you named a png image lockring.png then when it looks for the file it will see lockring.png.png so make sure it is a png format image but only name it LockRing.Hope this helps
gamendorf said:
Fixed in OP. I put that in the ReadMe, but forgot it on the thread Thanks for the reminder.
Thanks for letting me know. I'll add a lit of confirmed ROMS that this works for.
Navigate to C:\Lock_Ring_KitTemplate\META-INF\com\google\android
There is a file named "updater-script" Rename it updater-script.txt, and open it for editing. Just look for my name and replace it with yours. Make sure you take the .txt off after saving
No Idea
Click to expand...
Click to collapse
Thanks brudda. I was only kidding about renaming the script. I knew where to find it. I can run a couple other ROMS if you want. I got nothing better to do tonight. Let me know which ones you want to add to your list and i'll do a couple.
just downloaded will test in a minute on mik3d beta1, but in the read me file, no sizes for pic you intend to use (just a heads up).
Forgot to mention I am running Gingeritis 3D Beta VIII. And I do have .net 4 installed. Maybe thats why i didn't have any issues. Also I didn't even read the read me file. oops.
life_420 said:
just downloaded will test in a minute on mik3d beta1, but in the read me file, no sizes for pic you intend to use (just a heads up).
Click to expand...
Click to collapse
You're right. Oops. Zip file has been updated
life_420 said:
just downloaded will test in a minute on mik3d beta1, but in the read me file, no sizes for pic you intend to use (just a heads up).
Click to expand...
Click to collapse
Love my DropBox. Tried a few other apps like Minus and another but they are just not so user friendly and helpful. Although a couple have more GB.
gamendorf said:
What operating system are you running? Do you have Microsoft .net 4 framework installed on your system?
When it is working properly, after you run the BATCH file you should see a command window running various commands for a little while.
Click to expand...
Click to collapse
windows 7 i looked it up and it does have the Microsoft .net 4 framework intalled ,im thinking i just didnt name something right ill try what TDubKong suggested VVV and ill get back
TDubKong said:
did you make sure the file was named LockRing and was a png format? Something else to consider is that if you named a png image lockring.png then when it looks for the file it will see lockring.png.png so make sure it is a png format image but only name it LockRing.Hope this helps
Click to expand...
Click to collapse
TDubKong said:
Love my DropBox. Tried a few other apps like Minus and another but they are just not so user friendly and helpful. Although a couple have more GB.
Click to expand...
Click to collapse
dropbox has been the easiest, havent hit a limit yet, except storage space..... which i upgraded to eliminate that problem, all the others i have tried i cant upload anything because they limit file sizes that you can upload, where as dropbox just syncs with your desktop, takes awhile but works.
just tried it to make a flashable zip and it did the same thing as other guy, flashed the cmd prompt super quick, no zip created.....
edit:
wait i just checked windows update and it has 2 updates for net framework 4 lol
nice i was using the copy paste way. i use one like this for the 3d(that was made by triscuit1983.
still didnt work for me, oh well back to m10 editor... thanx anyways
did you put it on your c drive i had that problem on the one for the 3d
I will try again tomorrow, work in the morning
Sent from my PC36100 using xda premium
life_420 said:
just tried it to make a flashable zip and it did the same thing as other guy, flashed the cmd prompt super quick, no zip created.....
Click to expand...
Click to collapse
dased14 said:
did you put it on your c drive i had that problem on the one for the 3d
Click to expand...
Click to collapse
Make sure that you unzip the files to C:\Lock_Ring_Kit. When I install them somewhere else ("C:\Lock_Ring_Kit______"), I get the same error you do. However, the BATCH file did what it was supposed to do. Since C:\Lock_Ring_Kit did not exist, it created it, and there is a "Working" folder as well as a "Flashable.zip" there. But, since the original files were not in the right place, it is useless.
When the command prompt just flashes, what that means is that M10Tools are not having a chance to run. The only explanation I have for that as of right now is that the files are not in the right location. Also make sure that you named the image LockRing.png.
I'll see about making the batch file spit out an error code, but it might be a few days before I can get around to it. I'll keep yall posted.
I know I have done this before and this is a noob question, but lately I've been having trouble with this.
If I make changes to the zip file of a ROM (eg replace a few existing files, and remove some unwanted system APKs, but not add anything new), do I need to sign the zip before flashing or just flash straight after editing? Also what's the best tool to use to replace the files within the zip? I trust WinRAR will do the trick...
djsubtronic said:
I know I have done this before and this is a noob question, but lately I've been having trouble with this.
If I make changes to the zip file of a ROM (eg replace a few existing files, and remove some unwanted system APKs, but not add anything new), do I need to sign the zip before flashing or just flash straight after editing? Also what's the best tool to use to replace the files within the zip? I trust WinRAR will do the trick...
Click to expand...
Click to collapse
I've never added anything (yet!), just deleted un-wanted APK's and altered some system files (ie build,prop etc). I've never signed anything and I used IZArc although only as that's what's installed on my XP system.
This is something that I too would like to do more so that I can further personalize and tweak some of these already great ROMS, so I'm also curious for some pointers from more the experienced.
Check the portal, there's an app to create flashable zips there.
PS - POST QUESTIONS IN THE GENERAL SECTION !!!!!!!!
You can set a flag in recovery to check for signatures or not. When it is not set you can flash any zip file
Sent from my HTC Desire S using XDA App
jorgen2009 said:
You can set a flag in recovery to check for signatures or not. When it is not set you can flash any zip file
Sent from my HTC Desire S using XDA App
Click to expand...
Click to collapse
I tried this once, and then I flashed the zip. It was a CM7 zip which would normally take at least 20-30 seconds to complete, but this modified zip flashed in less than ten seconds. It said successfully flashed but when I rebooted nothing had actually happened. Hence I was wondering what went wrong?
Alright this is 3 really quick and easy questions.
I have infused 2.2.3 and i wanna know:
1) if i install a theme, or probably any mod or something like that, how would i take it off?If i wanted to change the theme im on, do i simply go into cwm and apply a different theme? Or do i have to do something to remove the other one?
2)Do i need the old zips i applied to the phone or should i just delete them?
3) and if i were to put allll my zips in there could i just install them from there or do they need to be in the main part of my internal sd card? Basically does it matter where in my internal sd card they are or not?
joeym11 said:
Alright this is 3 really quick and easy questions.
I have infused 2.2.3 and i wanna know:
1) if i install a theme, or probably any mod or something like that, how would i take it off?If i wanted to change the theme im on, do i simply go into cwm and apply a different theme? Or do i have to do something to remove the other one?
2)Do i need the old zips i applied to the phone or should i just delete them?
3) and if i were to put allll my zips in there could i just install them from there or do they need to be in the main part of my internal sd card? Basically does it matter where in my internal sd card they are or not?
Click to expand...
Click to collapse
1) To revert your theme back to the original you would either need to flash the rom again or the theme developer SHOULD have a revert for you to flash.
2)I keep them around just because, I always keepat least two roms and two kernels and a whole bunch of mods and modems. I mean the infuse has 16gb internal storage so memory isnt really that big of a deal. But no you dont NEED them.
3)Nope I've flashed from all sorts of places on my SD card. Root of the SD is probably the easiest though because then you dont have to do all the navigating through files etc in CWM.
Reynaldinho111 said:
1) To revert your theme back to the original you would either need to flash the rom again or the theme developer SHOULD have a revert for you to flash.
2)I keep them around just because, I always keepat least two roms and two kernels and a whole bunch of mods and modems. I mean the infuse has 16gb internal storage so memory isnt really that big of a deal. But no you dont NEED them.
3)Nope I've flashed from all sorts of places on my SD card. Root of the SD is probably the easiest though because then you dont have to do all the navigating through files etc in CWM.
Click to expand...
Click to collapse
Thank you SOOO much... got so tired of seeing 30+ views and no replies... thank you
joeym11 said:
Thank you SOOO much... got so tired of seeing 30+ views and no replies... thank you
Click to expand...
Click to collapse
Haha, no problem man
joeym11 said:
Thank you SOOO much... got so tired of seeing 30+ views and no replies... thank you
Click to expand...
Click to collapse
I just went to look for the revert but he didn't have it
This is the thread here
http://forum.xda-developers.com/showthread.php?p=17642552#post17642552
If you see it then lemme know, otherwise, do i reflash infused??
joeym11 said:
I just went to look for the revert but he didn't have it
This is the thread here
http://forum.xda-developers.com/showthread.php?p=17642552#post17642552
If you see it then lemme know, otherwise, do i reflash infused??
Click to expand...
Click to collapse
Yeah I dont see it. You can reflash infused. Make sure to back up everything you're gonna need though.
joeym11 said:
I just went to look for the revert but he didn't have it
This is the thread here
http://forum.xda-developers.com/showthread.php?p=17642552#post17642552
If you see it then lemme know, otherwise, do i reflash infused??
Click to expand...
Click to collapse
One of the "tricks" I usually do is this:
- make a copy of the .zip you're going to install -- rename it with 'revert' or 'undo' or something
- open the copy with 7zip, navigate to see what files are in it... (*don't touch the META-INF folder)
(themes usually contain /system/framework/framwork-res.apk and /system/app/SystemUI.apk)
- extract the same files from your current ROM
(either from the original zip, or directly from the phone -- I like to use 'Android Commander')
- replace those same files in the 'revert' zip -- and Bingo -- you now have a backup to restore if you don't like the theme
Reynaldinho111 said:
Yeah I dont see it. You can reflash infused. Make sure to back up everything you're gonna need though.
Click to expand...
Click to collapse
gwbard said:
One of the "tricks" I usually do is this:
- make a copy of the .zip you're going to install -- rename it with 'revert' or 'undo' or something
- open the copy with 7zip, navigate to see what files are in it... (*don't touch the META-INF folder)
(themes usually contain /system/framework/framwork-res.apk and /system/app/SystemUI.apk)
- extract the same files from your current ROM
(either from the original zip, or directly from the phone -- I like to use 'Android Commander')
- replace those same files in the 'revert' zip -- and Bingo -- you now have a backup to restore if you don't like the theme
Click to expand...
Click to collapse
Thanks ryan very much
And gwbard... i dont exactly understand that
Edit: Alright i got to the part where i extract the same files wiht my current rom... but how do i do that?... i just opened the zip from infused and all i see was the meta and then a folder with updates... what do i do? Im on infused 2.2.3 if that helps
joeym11 said:
Thanks ryan very much
And gwbard... i dont exactly understand that
Edit: Alright i got to the part where i extract the same files wiht my current rom... but how do i do that?... i just opened the zip from infused and all i see was the meta and then a folder with updates... what do i do? Im on infused 2.2.3 if that helps
Click to expand...
Click to collapse
Just browse through the "update-infused-v2.2.3-full.zip" -- get familiar with the filesystem.
At the root you should see META-INF, system, and updates.
'META-INF' contains the scripting to run the update itself.
'updates' contains the modem & kernel.
'system' is what you should be looking at. Inside 'system' (amongst other stuff) are 'app' and 'framework' folders. "SystemUI.apk" is in 'app'. "framework-res.apk" is in 'framework'. 99% of the time these are the only two files changed in themes.
Now, not all developers follow the same folder structure in their CWM zips, for example they might just have a folder 'framework' where the scripting copies framework-res.apk to /system/framework, and so on...
sorry but it appears my building is on fire gotta go
edit: all is well (sorta) -- seems lightning has fried one of the A/C units on the roof!
gwbard said:
Just browse through the "update-infused-v2.2.3-full.zip" -- get familiar with the filesystem.
At the root you should see META-INF, system, and updates.
'META-INF' contains the scripting to run the update itself.
'updates' contains the modem & kernel.
'system' is what you should be looking at. Inside 'system' (amongst other stuff) are 'app' and 'framework' folders. "SystemUI.apk" is in 'app'. "framework-res.apk" is in 'framework'. 99% of the time these are the only two files changed in themes.
Now, not all developers follow the same folder structure in their CWM zips, for example they might just have a folder 'framework' where the scripting copies framework-res.apk to /system/framework, and so on...
sorry but it appears my building is on fire gotta go
edit: all is well (sorta) -- seems lightning has fried one of the A/C units on the roof!
Click to expand...
Click to collapse
Lol Glad youre aight man
Sent from my friggin huge Samsung Infuse
So if i was to flash infused but wanna keep my kernel and modem id just remove the update folder from the zip and run it as usual?
Sent from my SAMSUNG-SGH-I997 using XDA App
In this tutorial I will show you how to create your own T.W. rom using your GS3 and Root Explorer. There are many ways you can create a rom but not everyone has the time to sit at a computer every night. However, your phone is always on you and can find a few minutes here and there to create your own masterpiece.
For the sake of this tutorial, we will name our new rom "SLICK".
Here are a few things you will need...
1. The rom base from Scottsroms. I'm NOT talking about Cleanrom but the unmodified stock rooted rom.
2. Root Explorer.
3. Script Manager
4. Any mod you can flash or come up with on your own.
1. GET STARTED!
Download the base rom to your phones EXT-sdcard and extract it using Root Explorer. After it's extracted the new unziped rom will be located in /storage/sdcard0/SpeedSoftware/Extracted. The extracted rom is now your new base. At this point it would be a great idea to move it to your EXT-sdcard and create a new project folder for it and label the folder "Project SLICK". inside the folder is your rom. lets rename that rom "SLICK".
Lets open your new SLICK rom. You should have some folders...
BOOT IMAGE
DATA
META-INF
SYSTEM
3. THE SYSTEM FOLDER
/SYSTEM/APP
Most of your work will done in the System folder so lets open that up. This is the heart of your rom! There are many folders here but lets start with the app folder. This folder has every app installed in your rom. This is a good time to remove the bloat you don't want in your rom. Go ahead and delete the apk's you don't want or need.
/SYSTEM/BIN
Here you can speed up your system or make it more battery efficient by deleting things like "mpdecision" and things like that. Be careful what you delete though. In general you won't do much in here.
/SYSTEM/BUILD.PROP
Here you can change values or add values. The one value we are concerned with is "ro.build.display.id" This build property's value will be displayed in the end users settings menu under "about phone". So let's give this property the correct value "ro.build.display.id=SLICK ROM v1.0" The rest of the build properties you can do as you wish. Build.prop is simply a text file. You can use the text editor built into Root Explorer.
/SYSTEM/CSC
Open this file and you will see more files. Listed is "feature.xml". Here you can edit values for various items for texting and mms.
/SYSTEM/ETC
Here is where you will find a folder called "init.d". Located in this folder are various text files. The text files are scripts that are told to run when your phone boots. You can add or modify to the existing scripts or create a new text file.
So we went over a few of the basics of modding your new rom and molding it into something you can call your own but does it work??
4. TESTING YOUR NEW BASE.
So we have already modified our rom a considerable amount and should have a good solid base. Before we go any further we should really test things out first. If we did something wrong earlier we will at least have an idea where to look. So lets flash our new rom. Go to you EXT-sdcard and find our project folder. you should still have your SLICK file. Zip this file with Root Explorer. Make sure you have a good battery and a cool environment because it's going to take your GS3 about 30min of hard work to zip this file. When that is finally completed, flash your new rom located in /storage/sdcard0/SpeedSoftware/Archives. Flash it just like you would any other rom.
Test your new rom out on your GS3 and see how things are running. Check your existing modifications you did earlier. If everything looks good, we can continue modding. If not you will need to go back to your base to see where you went wrong. This is also a great time to check your init.d scripts. One way to do this is to download "Script manager" from the market and click on your init scripts to read there log. It will tell you if something went wrong.
If everything is looking good, we can continue modding...
5. THE MODS
So we have that nice clean base but what about all them mods in the roms we download and flash everyday? There are a few different ways we can do this and we will start with the easiest but first, do a nandroid backup of your new base. If one of your mods you perform next goes bad it's simply quicker to recover. Now, If you have flashable zips of some of the mods you like then you can flash them now and make sure they are working the way they should in your rom. Remember, just cause we have the d2vzw does not mean mods from the sprint or T-mobile won't work on our devices. Sometimes it's worth a try. It's all about which firmware they are on and what has changed with the firmware.
So we flashed a few mods but don't have everything we wanted. At this point you are left with only one option and that is to get on that PC of yours and learn to decompile a APK. I may touch on this subject later as it is a bit more involved for someone new to this sort of thing.
6. UNDERSTANDING THE FLASHABLE ZIP
The alternate method of a flashable zip is to extract your flashable using Root Explorer and picking it apart. For example we will use "Lean Kernel" and kill 2 topics with one stone. If you unzip the kernel you will see...
BOOT.IMG
META-INF
SYSTEM
As you can see there are some familiar files to us just like when we extracted our base rom in the beginning. Basically when you flash a mod like this or any flashable for that matter, it installs files into your rom in certain places. In this example we will be installing in BOOT.IMG and SYSTEM. But what? And what is that META-INF file for? Well this META-INF file is what tells your rom what files and what to do with those files. Inside META-INF is a text file called an "updater script".
Here is what it looks like...
Code:
show_progress(0.500000, 0);
mount("ext4", "EMMC", "/dev/block/mmcblk0p14", "/system");
package_extract_dir("system", "/system");
set_perm(0, 0, 0777, "/system/etc/init.d/00leanKernel");
unmount("/system");
assert(package_extract_file("boot.img", "/cache/boot.img"),
write_raw_image("/cache/boot.img", "/dev/block/mmcblk0p7"),
delete("/cache/boot.img"));
show_progress(0.100000, 0);
Line 2 shows it mounting the system so we can write to it.
Line 3 shows us extracting the entire directory of the system file in the flashable into the system file of our rom.
Line 4 shows we are setting permissions for one of the system files we just installed in the rom. In this case it is an INIT.D file.
Line 5 shows us returning the system to an un-writable state.
Line 6 shows we are now installing the other file called BOOT.IMG.
So we installed BOOT.IMG and the SYSTEM file. The BOOT.IMG file is usually only found in a rom or kernel zip so most of the time you won't see this file in a flashable but I wanted to use this as an example to show a bit about the kernel side of things.
Ok, so lets get back to the original files of this flashable zip. The updater script stated we installed a new system file into the rom so whats in there? If we open the SYSTEM file from our flashable with Root Explorer you will find a file hierarchy...
SYSTEM
-- ETC
--- INIT.D
---- "00LEANKERNEL"
-- LIB
--- MODULES
---- Listed here are a bunch of ".ko" modules and i'm not listing them all.
So whats the point of all this? Well lets say when we originally debloated our rom in the begining we could of included some of our flashable mods like a custom kernel before we zip the rom to test the base. So in this case we can manually install this kernel before we zip the base. We can take the BOOT.IMG from our extracted kernel and replace the BOOT.IMG in our extracted rom. We only need the files from the flashable so we need to copy and paste the "00LEANKERNEL" file from our flashable to our roms /system/etc/init.d folder. We can also take those ".ko" files from the flashable and dump those into the /system/lib/module folder and we are done. You have now manually installed a kernel into your base rom before you zipped it. Now when you zip your rom and flash it, your new base rom will boot with your custom kernel. Since we manually installed the kernel we don't need the META-INF file provides an auto install script for installing through recovery. Technically we could take all of our flashable mods, extract them, look at the file hierarchy and copy and paste the those files to our extracted base rom. That way we can zip our rom and test it with the mods right off the bat. You can really make things quicker this way and is in general the way to go.
I think it's rather important to fully understand a flashable zip. How it's built and how it completes it's task. It's used so often and makes mods so incredibly easy to install but it is also what installs our rom! One of the files we see when we open "slick" is a META-INF and there inside is the updater script to flash the rom. Again we are doing the same thing as we do with the flashable mod but this time we are installing a lot more files with a lot more permissions. It is the exact same thing as shown above just a bit more extensive.
7. PUT THE PIECES TOGETHER
Ok so we have our base rom running on our phone and possibly a few mods installed. We also have our extracted and debloated "slick" rom on the EXT-sdcard inside our project folder. The next part is rather easy if you understand how those flashable mods were installed. If you understand the whole flashable and its files, your better off just extracting them and then copy and paste them where they need to go. After you have all your mod files in place you can now zip your official "Slick" rom using Root Explorer of course. Prepare yourself for another 30 minutes for it to zip. After it's zipped your done. You have now created your first fully modded rom! However...
Lets say you don't get the whole flashable thing and or you had made some other changes to the rom while you were testing. Lets say you flashed some mods and created a few init.d scripts or the build.prop along the way. NO WORRIES! We can put the rom together another way. A lot of the mods you flash will install files in some usual areas of the rom like your Framework folder and such. Lets just say we don't know though. You can actually copy complete folders from the rom you are running right there and now and paste them into your extracted "Slick" base rom using Root Explorer. So you can take "/system/framework" from your currently running rom, copy it, and paste it in "/storage/EXT-sdcard/project folder/slick/system/framework". In short just take your copy of the framework file and put it in your extracted base and paste it. Root Explorer will then ask you if you want to replace this file and click yes. You have just transferred any modded file that might have been in framework to your extracted rom. Any folder you may think was modded, simply copy and paste it to your extracted base rom on your EXT-sdcard. Once you think you have it all the modded files transferred you can zip your new "Slick rom! Flash and enjoy!!
FINISHED
So we have now completed our own rom on the device itself. It's really not too difficult just a bit more time consuming with zipping and that. However, you may need to do a bit more research on how to decompile and recompile an APK. This is one of things that can really be a pain to setup. It's again the basics that will kill you. The whole PITA is not decompiling or making changes to a framework file, it's setting up the environment that sucked for me. You have to get the Java and files in order and all the little crap to get it to work. IMO, if you haven't decompiled an APK yet it's really not difficult at all. Like I said. It's the basics. I encourage you to learn this because it's so freakin easy after it's all setup and you will be able to do so much more with your rom. Once you get this APK thing down don't be afraid to take someone elses work and reverse engineer it. Try to figure out what that developer did to accomplish what he wanted. It's a great way to learn and thats what it's about.
I may add to this somewhere down the road but for now it's all I have. I hope this helped and motivated someone to create a rom and begin there journey to become developer someday! We can all use fresh ideas for development. There is so much more to come for Android so get your hands dirty and share!
Thanks guys!
Ha never really thought of doing this on the fly with my phone. Even though all the right stuff was sitting in my face thanks for opening my eyes razz1
Sent from my SCH-I535 using Tapatalk 4 Beta
dincdoes.me said:
Ha never really thought of doing this on the fly with my phone. Even though all the right stuff was sitting in my face thanks for opening my eyes razz1
Sent from my SCH-I535 using Tapatalk 4 Beta
Click to expand...
Click to collapse
It's another way. May not be the fastest way but it's another option. I also wanted to write this as a general rom creation and learning some basics. It's always the basics that will kill a project and motivation. I would like to see a complete newb to be able to complete a rom with this tutorial. Then I accomplished something. Going to have to finish this tomorrow though. It's taking longer than I thought lol.
Yea I mean I'm a newb at doing it from my phone if that counts =) .. What explorer do you like to use to repack the zips. I'm sure I'll try this method soon to play while bored at work. Rom tool box will help with boot animations, fonts and transition animations too take care thanks for giving our community some new skills I'm sure it will help out down the road.
Sent from my SCH-I535 using Tapatalk 4 Beta
Thank you for this post. This will definitely get me to try and make my own ROM the way I like, also I might just learn some new stuff. Great post thanks again
Sent from my SCH-I535 using xda app-developers app
Nice tutorial.
It's a great way to show what can be done just from your phone.
:good:
Right on man. Been waiting for this. Thank you.
Sent from my SCH-I535 using xda app-developers app
dincdoes.me said:
Yea I mean I'm a newb at doing it from my phone if that counts =) .. What explorer do you like to use to repack the zips. I'm sure I'll try this method soon to play while bored at work. Rom tool box will help with boot animations, fonts and transition animations too take care thanks for giving our community some new skills I'm sure it will help out down the road.
Sent from my SCH-I535 using Tapatalk 4 Beta
Click to expand...
Click to collapse
I use androzip man.
Sent from my SCH-I535 using xda app-developers app
More added
So would I make, say ROM manager a system app? Just copy the apk into the /System/App folder?
Evil Genius Jr. said:
So would I make, say ROM manager a system app? Just copy the apk into the /System/App folder?
Click to expand...
Click to collapse
Yes, but not all apps you download from google play work in /system/app. Some want to be installed into /data/app. However /data/app doesn't exist till after the rom is booted. You would need to add the folder to your extracted rom and modify the updater script.
razz1 said:
Yes, but not all apps you download from google play work in /system/app. Some want to be installed into /data/app. However /data/app doesn't exist till after the rom is booted. You would need to add the folder to your extracted rom and modify the updater script.
Click to expand...
Click to collapse
You are the fu**ing man razz1.
Sent from my SCH-I535 using xda app-developers app
That's about all I have for now. OP completed!:sly:
Hello. Ok so I created a ROM what I call MyTWGE (Tuchwiz Google Edition). Followed the instructions, unzipped the stock Verizon OS went into the -app- folder deleted all the Verizon, Samsung and Google apps (only the ones that are download able from Google Play). Replaced the stock launcher with the 5x6 version that I extracted from another zip, replaced the camera with the Google edition camera (download able from GP), replaced the keyboard with the Note2 keyboard (also unzipped from another zip). Looked around and deleted a few more files I found that were connected to some Samsung apps and zipped it up. Flashed the zip yesterday onto the phone and it's ALIVE working.
Thank you for your patience to write up all these instructions. I previously used TB to debloat my phone and that was it, learned a few thing thanks again
Sent from my SCH-I535 using xda app-developers app
Lehocki said:
Hello. Ok so I created a ROM what I call MyTWGE (Tuchwiz Google Edition). Followed the instructions, unzipped the stock Verizon OS went into the -app- folder deleted all the Verizon, Samsung and Google apps (only the ones that are download able from Google Play). Replaced the stock launcher with the 5x6 version that I extracted from another zip, replaced the camera with the Google edition camera (download able from GP), replaced the keyboard with the Note2 keyboard (also unzipped from another zip). Looked around and deleted a few more files I found that were connected to some Samsung apps and zipped it up. Flashed the zip yesterday onto the phone and it's ALIVE working.
Thank you for your patience to write up all these instructions. I previously used TB to debloat my phone and that was it, learned a few thing thanks again
Sent from my SCH-I535 using xda app-developers app
Click to expand...
Click to collapse
Lol the whole time I was reading this I was waiting for you to say something didn't work out for you but it all did I guess. Nice!!
Yeah running for the past 24h no problems everything works. Thanks
Sent from my SCH-I535 using xda app-developers app
---------- Post added at 02:24 AM ---------- Previous post was at 02:07 AM ----------
Only thing that that's annoying is the wifi in the taskbar. I read in one of the posts that I have to go into systemui and some other files within n delete lines 12 through 21 but that didn't work , am guessing I need to decompile systemui to do that. The person in the post didn't clarify and I'm not ready to do that yet. Reason is I don't know anything about programming or linux or decompiler or anything like that. Deleting files I can do replacing some sure. But I'm happy my first attempt to mix something together worked and I'll keep doing it till I actually figure out what it is that I am doing. Thanks again for the post
Sent from my SCH-I535 using xda app-developers app
Yea. Follow Didacts write ups to get you through it. It's all in framework res apk.