Related
Is there a way i can change png files on my phone from my phone? I want to change the calling icon in the framework-res.apk. i found out a way to change it with an app in the market. But i dont know how to put it back in the apk. Help please.
find the picture --> backup it --> put in your picture with the same name and exactly the same bigness (pixels) --> bingo
cheers, stephan1
its not that easy. any other ideas anybody please.
Well if the file is a .9.png then it won't be that easy because these files are compiled to binary. (correct me if I'm wrong devs) You will need to do a little more reading to figure this one out. Also, you can't just "unzip" an apk and mess around with the pics and think that it's going to work when you zip it backup. My understanding is that you have to place the file that you are replacing into the compressed(i.e. zipped) apk.
Once again, Devs, correct me if I am wrong but all my info comes straight from using the search button...Try it out
jballz0682 said:
Well if the file is a .9.png then it won't be that easy because these files are compiled to binary. (correct me if I'm wrong devs) You will need to do a little more reading to figure this one out. Also, you can't just "unzip" an apk and mess around with the pics and think that it's going to work when you zip it backup. My understanding is that you have to place the file that you are replacing into the compressed(i.e. zipped) apk.
Once again, Devs, correct me if I am wrong but all my info comes straight from using the search button...Try it out
Click to expand...
Click to collapse
You're right, and wrong. You can unzip an .apk and mess with the images, then rezip it back up and rename it to (yourapk).apk from (yourapk).zip, you just need to sign it when you're done.
I haven't messed with anything entitled ".9.png", but if it's binary then hex editing it is probably the quickest way to edit it, otherwise there is a program called 'apktool' that can decompile apk's and is pretty effective, I've used it a few times
dmullins80 said:
its not that easy. any other ideas anybody please.
Click to expand...
Click to collapse
Pull framework-res.apk from your phone, to your computer's desktop. Use Winrar, or a similar archive extracting program, to open the file, then click Extract -> (some folder on your desktop that has nothing else in it)
Find the picture you want to change, make sure your new picture is the same dimensions (e.g; 320x480) and is the same type of file (e.g; .png) and replace the stock image with your custom image.
Once that's done, highlight all files and folders in the root of the folder you extracted framework-res.apk to -> (if using Winrar) Right-Click -> Add to archive -> Change archive type to .zip and click OK -> Right click on your newly created framework-res.zip and change the extension to .apk (you might need to open a windows explorer window and select tools->folder options->view tab->uncheck 'hide extensions for known filetypes).
Once that's done, you'll need to sign your new framework-res.apk. You can do that with EasySign. Download EasySign to your desktop, extract the archive and open a Windows Command Prompt (Start->All Programs->Accessories->Command Prompt). You'll need the Java JDK installed.
Drag your newly created framework-res.apk file into your EasySign folder on your desktop and down the following;
Type the following, assuming you have Windows 7 or Vista:
Code:
cd C:\Users\(your username on your PC)\Desktop\EasySign
You should now see the following;
Code:
C:\Users\(your username on your PC)\Desktop\EasySign>
You should now type the following;
Code:
java -jar signapk.jar testkey.x509.pem testkey.pk8 framework-res.apk framework-res_signed.apk
It'll take a moment, then you'll see;
Code:
C:\Users\(your username on your PC)\Desktop\EasySign>java -jar signapk.jar testkey.x509.pem testkey.pk8 framework-res.apk framework-res_signed.apk
C:\Users\(your username on your PC)\Desktop\EasySign>
...and you should now have framework-res_signed.apk in your EasySign folder on your desktop.
Pull it to your desktop and rename it framework-res.apk and put it back where you got it, most likely using adb (if using adb, put it in C:\(your androidsdk folder)\tools and type the following;
Code:
adb remount
adb push framework-res.apk /system/framework
adb reboot
Alternatively, you can place it on your sdcard and use a program like Astro to move it to /system/framework and immediately reboot your phone for the changes to take effect.
Enjoy, it took me like 10 minutes to type this
-mak
Thanks for the wirte up, (i've been try to do something simaler to this for a while). I got to the end but then I get this error in the cmd window. Any thoughts?
'java' is not recognized as an internal or external command,
operable program or batch file.
jadesdan said:
Thanks for the wirte up, (i've been try to do something simaler to this for a while). I got to the end but then I get this error in the cmd window. Any thoughts?
'java' is not recognized as an internal or external command,
operable program or batch file.
Click to expand...
Click to collapse
Sorry, I should have mentioned you'll need the Java JDK installed.
.mak is that the same one by Stericson?
here
sorry if that is slightly OT, just rebuilding the PC setup and need the files, so not sure which one I want to use - his worked last time for me well.
thanks~
dianeofarcadia said:
.mak is that the same one by Stericson?
here
sorry if that is slightly OT, just rebuilding the PC setup and need the files, so not sure which one I want to use - his worked last time for me well.
thanks~
Click to expand...
Click to collapse
EasySign? I'm not sure, I've only downloaded it from grdlock's site. The one you linked to actually looks easier to use..
when you re-zip the file after editing do you use normal compression or store?
Magnum72 said:
when you re-zip the file after editing do you use normal compression or store?
Click to expand...
Click to collapse
Normal if you're in Windows, otherwise .gz (most compatible) under linux.
.mak said:
Sorry, I should have mentioned you'll need the Java JDK installed.
Click to expand...
Click to collapse
I've installed it, but I still get the same error. Do I need to set a system path within java?
If I get this working it will solve many of my 'problems' Thank you!
I used ubuntu... what I did was change the default unknown call icon... I opened the Phone.apk in ubuntu and replaced the pic with another icon from another rom of my choice making sure it had the exact same name.. then went back to windows, pushed phone.apk and got it no problem... ubuntu opens the apk's without having to unzip them...
droidfreak said:
I used ubuntu... what I did was change the default unknown call icon... I opened the Phone.apk in ubuntu and replaced the pic with another icon from another rom of my choice making sure it had the exact same name.. then went back to windows, pushed phone.apk and got it no problem... ubuntu opens the apk's without having to unzip them...
Click to expand...
Click to collapse
I did that with the numbers on the dialer and the home launcher icon in the Tainted Vanilla thread. But there are other apk's that are a bit touchy. Once I learn how to sign them, I think it might open up a whole new world of skinning for me.
Yeh it would be good to get that down... it would open a huge door.. make things easier..
Question; in order for the above process to work, must you be rooted? I would love to change icons...unfortunately my naive-impatient self flashed the leak when it was first brought public.
Ngmanis said:
Question; in order for the above process to work, must you be rooted? I would love to change icons...unfortunately my naive-impatient self flashed the leak when it was first brought public.
Click to expand...
Click to collapse
Unfortunately you do need to be rooted for these changes to occur, however you can still do some customization with apps like Bettercut or ones similar.
jadesdan said:
I've installed it, but I still get the same error. Do I need to set a system path within java?
If I get this working it will solve many of my 'problems' Thank you!
Click to expand...
Click to collapse
I didn't, and it works for me. Are you using the proper commands, exactly as shown in my tutorial?
.mak said:
I didn't, and it works for me. Are you using the proper commands, exactly as shown in my tutorial?
Click to expand...
Click to collapse
Yes! Even coy and paste (except for changing the name of the apk I'm trying to sign).
I've downloaded the java link that you provided and installed, redownloaded and installed the JRE, rebooted. THe java site tells me I have the latest and greatest of everything.
I know it's got to be something I'm doing wrong, I get the same error with Autosign and other batch signing tools. I just don't know what my problem is.
jadesdan said:
I've installed it, but I still get the same error. Do I need to set a system path within java?
If I get this working it will solve many of my 'problems' Thank you!
Click to expand...
Click to collapse
jadesdan said:
Yes! Even coy and paste (except for changing the name of the apk I'm trying to sign).
I've downloaded the java link that you provided and installed, redownloaded and installed the JRE, rebooted. THe java site tells me I have the latest and greatest of everything.
I know it's got to be something I'm doing wrong, I get the same error with Autosign and other batch signing tools. I just don't know what my problem is.
Click to expand...
Click to collapse
Did you make sure to cd into the proper folder from command prompt? I've made this mistake a time or two;
Code:
cd C:\Users\(your username on your PC)\Desktop\EasySign>
^^ assuming you have EasySign in a folder called EasySign on your desktop, and that you change (your username on your PC) to your actual username.
Well I haven't had much time lately to make themes but I figured i got enough time to explain how. This is how i do it in windows 7.
1) First thing i assume that you already have androidsdk on the root of your C drive. Lets go ahead and add it to your system path. If it's not called androidsdk go ahead and change it to that. Now open up your startmenu, right click computer, click properties, then click advanced system settings, in the advance system settings select environment variables. In the second box down look for path select it and choose edit. copy and paste this
Code:
;C:\androidsdk\tools
in there. Click okay.
2) download the jre and jdk from here and install them. Now you need to add them to your system path so copy paste this
Code:
;C:\Program Files (x86)\Java\jre6\bin;C:\Program Files (x86)\Java\jdk1.6.0_20\bin
to your system path just like you did in the first step.
3) Download apk manager from here. Now run it and when it says clean out all current projects click yes. Now thats ready to go.
4) Download an image editing program. I use gimp. Also if you don't have it 7-zip
your all set to go now so lets start over with the numbers
1) choose a mymode apk and extract it with 7-zip. Open up the res folder select a png that you want to change and change it with the image editor you chose.
2) when you've changed the images you want open up the original apk as an archive with 7zip. Then place the res folder of the modified unzipped apk into the archive and close the archive.
3) Now open up apk manager and place the mymode apk into the place here for signing folder click script batch choose no then type 15.
4) Now put the newly signed apk into your androidsdk/tools folder and close apk manager.
5) open command prompt and type this
Code:
cd\
cd androidsdk/tools
adb install whatever.apk
I'll update this with pics a more thorough guide.
Thanks to everyone that made this easy
reserved for themes to come
Thanks been waiting for a thread like this.
thanks, if i ever get any free-time between jobs and kid and fiancee i will look into this a little more
This is an awesome guide! I messed around with theming mytouch/g1 back when I had one.. so this will be great to make some themes for the slide..
One question though.. let's say you pull the nest theme.. theme it and re install it.. will it just override the nest theme or in the theme listing will it appear as a new theme and still allow you to have the original theme?
Sent from my T-Mobile myTouch 3G Slide using XDA App
ryanolson7 said:
One question though.. let's say you pull the nest theme.. theme it and re install it.. will it just override the nest theme or in the theme listing will it appear as a new theme and still allow you to have the original theme?
Sent from my T-Mobile myTouch 3G Slide using XDA App
Click to expand...
Click to collapse
The nest theme is in the framework, its not an .apk like the rest, its built into the system. The rest of the mymodes themes are .apks and if you edit those they will override the stock "nest" theme. The only way it will show up different in the theme chooser is if you edit the preview snapshot to be a preview of your theme. If you wanna keep the original theme, the nest theme is it and you should edit a different theme .apk...
-BMFC
Sent from my ROOTED MyTouch3G Slide
Okay so I got the next three days off and I already got two mymode themes pretty much done well their done but I just learned of a way to change the name so they are there own standalone apk instead of using another apk name. I've been using puppypride (which by the way isn't puppies those are full grown dogs) and switching out the pngs and you couldn't have the regular puppypride now you can have both
hope you don't mind but I did a mod of your themes and took out the bubbles since some people always create threads about it
Help with following guide
I am a newb at this so please don't attack me if I am doing something wrong. I have been struggling with following the guide posted to make mymode themes. I have successfully got up to the step of signing the apk file. I modified the files in the free_kick.apk. When I try to use APK Manager 4.8 and using the directions given the file just gets erased and nothing happens. My log file just shows errors. Any help with a more detailed directions one what to do in APK manager as I am trying different things and not getting anywhere. I use the option 15 like told in the guide. I can send my modified apk file to anyone if they can get this to work and get it installed that would be appreciated so much. I hope I can figure this out my own but thought I would try get help from the forums. Thanks in advance.
impimms said:
I am a newb at this so please don't attack me if I am doing something wrong. I have been struggling with following the guide posted to make mymode themes. I have successfully got up to the step of signing the apk file. I modified the files in the free_kick.apk. When I try to use APK Manager 4.8 and using the directions given the file just gets erased and nothing happens. My log file just shows errors. Any help with a more detailed directions one what to do in APK manager as I am trying different things and not getting anywhere. I use the option 15 like told in the guide. I can send my modified apk file to anyone if they can get this to work and get it installed that would be appreciated so much. I hope I can figure this out my own but thought I would try get help from the forums. Thanks in advance.
Click to expand...
Click to collapse
Actually the guide needs to be fixed a little because i'm guessing your getting compiling errors when using apk manager? But the best way to do this is to open up the mymode theme (using 7zip) as an archive delete meta-inf folder then replace the pngs with ones of your choice as long as they are the same scale. Then resign. and install
totally lost
I've followed these directions to a T and when it comes to using the apk manager i am getting nothing, please help
You guys that are having trouble with apk manager...its honestly not necessary to use Apk Manager for this. Mymodes themes are system .apks and shouldn't be re-signed. What you need to do is forget about apk manager (for now) and drop the UNsigned .apk into the ROM update you are using, and resign the whole ROM using the autosign tool created by jesusfreke. Or just adbpush the .apk. but don't resign the .apk.
Here's the link for the autosign tool to sign ROM updates. its in the THIRD POST and its auto-sign .zip, NOT the signing.zip in the first post. you can put it anywhere you want and you just drop (a copy of) your ROM update in the autosign folder, rename it update.zip, then run the sign.bat to sign. it will create another file, update-signed.zip. you shouldnt need to wipe when flashing the same ROM over itself, but i cant guarantee this is true for all ROMs.
you can also make an update that will only flash the .apk to /system/app, and nothing else will be changed. basically just make a copy of the update for the ROM youre using, then delete everything but the /system directory from the zip. then go into that /system directory and delete everything but the /app directory, then go into it and delete all the .apks and odex file or whatevers in there. ALL OF IT. when you are finished you should have an update with nothing in it but a /system/app directory. you put your modded .apk in there in /system/app, and thats it for that.
then you must edit the update script and remove MOST of its contents so that it only does what you want it to. THIS IS IMPORTANT! Go here to learn how to create an update script. what youll need is way simpler than the examples, youll want it to look basically like this...
Code:
assert compatible_with("0.2") == "true"
show_progress 0.1 0
copy_dir PACKAGE:system SYSTEM:
show_progress 0.1 10
this update script will copy ANYTHING in the /system directory to /system on your device, regardless of subdirectories. that means anything in /system will go in /system, anything in /system/app will go to /system/app, etc. but since you only have one .apk in there it wont mess with anything but what you put in there. this way, you have a NOWIPE update for...well, whatever you want to put in it.
so you just drop the new shortened update-script in /META-INF/com/google/android/
and then use the autosign tool to resign your new update then flash away! This also takes less time cus its only flashing one file instead of flashing a whole ROM just to replace that one file...
hope this helps...
-BMFC
Sent from my T-Mobile myTouch 3G Slide using XDA App
So you cannot do this on t-mobile's rom which is 2.1 right now? I'm leery of rooting in case they ever release froyo
Tbrewer80 said:
So you cannot do this on t-mobile's rom which is 2.1 right now? I'm leery of rooting in case they ever release froyo
Click to expand...
Click to collapse
I'm having issues with this as well... After I do the whole signing apk thing, it installs fine, but when I go to MyModes, the preview is black and when I select it, the MyModes app force closes. I don't get it.
A lot of people have asked in various threads lately about getting this theme on x rom, or can someone port this theme for me, etc. It really isn't that hard. It actually is pretty much a simple matter of copying and pasting. This will work on any ROM, and it only takes a few minutes, easy enough for an amateur to do it.
1. First, download the ROM that has the theme that you want on your current ROM.
2. Extract framework-res.apk from /system/framework and rename it to framework-res-old.zip and then right click it, and click extract all. Just extract them to currentdirectory\framework-res-old, which should be the default option anyway.
3. Take your current ROM, and extract framework-res.apk from /system/framework, and repeat step 2 except name it framework-res-new.zip.
4. Browse to the framework-res-old\res folder and select all of the folders starting with "drawable", such as "drawable-mdpi"
5. Browse to the framework-res-new\res folder and paste those folders, it should prompt you to merge and replace files and all that jazz, just click yes and do for the next x conflicts. It will copy and replace all of the image files.
6. Go back to the root of your framework-res-new folder, highlight all of the contents, right click, Send to > Compressed (zipped) archive
7. Windows will re-zip framework-res-new. When it finishes, rename the new zip file to framework-res.apk and push it to /system/framework. If you haven't gotten s-off on your phone, you have to do this while in clockwork recovery (make sure you mount /system in the partitions menu, or if you are s-off and booted, type adb shell mount -o rw,remount /system if it gives you memory errors)
For other operating systems, the steps are similar. If you use a linux distro, I'm going to assume you are smart enough to figure out the compression tools and menu items to unzip and rezip the apk files.
NOTE: You don't actually have to change the extensions to .zip, in fact, you won't be able to unless you unchecked hide known file extensions in the windows folder options in control panel. I just thought it would be easier. If you don't want to unhide extensions, just use a tool like 7-zip or winrar to open and extract the APK. In simple terms, all you are doing is replacing the res folder of your new framework-res.apk with the one from the theme you want. Not very hard.
ANOTHER Note: Sense roms are a bit more difficult to theme, since all of the HTC apps are themed from images in com.htc.resources.apk in /system/framework. But if you are on a sense ROM, you probably can just use a MyModes theme. If you do however choose to try this on a sense ROM, it will only theme user and non-HTC apps. This guide will technically work for any ROM but it works best for AOSP based ROMs, like CyanogenMod or ArayrayMod. The only thing is that if there is a change in the color of text, then you have to decompile both framework-res APKs and copy styles.xml from the old one to your new one and recompile it. APKtool or APK Manager both work great for that.
DO A NANDROID BACKUP BEFORE PUSHING THE NEW FRAMEWORK! Sometimes you can get boot loops from screwing with other files in framework-res, or if it is not signed properly. But you shouldn't get boot loops as long as you stay away from XMLs.
how do i extract an apk? it shows up as an apk and when i click extract it does nothing
Sometimes pushing new frameworks cause boot loops fyi..
Happened to me twice :/
Sent from my T-Mobile myTouch 3G Slide using XDA App
purple1 said:
how do i extract an apk? it shows up as an apk and when i click extract it does nothing
Click to expand...
Click to collapse
Did you try renaming it to framework-res.zip rather than .apk? If you have 7-zip or winrar you can also right click, open with, and choose 7-zip or winrar from the choose default program option.
arayray said:
Sometimes pushing new frameworks cause boot loops fyi..
Click to expand...
Click to collapse
Only if you screw with the non-drawable folders. If you leave the XMLs intact and only change the images it boots fine. The boot loops are caused by incompatible or conflicting XML files, which happens when you just push a random framework-res from another ROM, you have to just move the images over.
I use apkmanager for linux and its immensely helpful. Also you can loop one even without modifying the xmls. Least I have that's why the most important part of theming is knowing how to backup/restore or flash sbf or w/e.
Only if you screw with the non-drawable folders. If you leave the XMLs intact and only change the images it boots fine. The boot loops are caused by incompatible or conflicting XML files, which happens when you just push a random framework-res from another ROM, you have to just move the images over.
Click to expand...
Click to collapse
I think you should state that in the OP
Added a note at the bottom, thanks
Hello A little while ago I managed to learn how to theme totally from scratch. I knew nothing of anything before I started, but now I know how to port themes As I still see myself as a n00b there may be some weird things I've done, but at least I manage to create the themes This might not be the best way to theme, or the easiest, but it works
Overview PNGS
1) Getting the files
2) Getting the images
3) Port
4) Package and Sign
The only programs I've used is 7zip and autosigner download them and install 7zip and extract autosigner to a nice location for example your desktop
Getting the files
The first you need to do (after getting the programs) is to find the file you will mod (edit). This will mostly be the framework-res.apk because this decides most of looks of phone (for example the statusbar). Download the .zip of the rom your going to theme. Open it up (shouldn't require any programs, if does, use 7zip: either drag it onto the 7zip icon or right click and choose open with). Open system -> app and copy the framework-res.apk (or any other apk you would like to theme, for example the settings). Now paste it into an appropriate folder.
Getting the images
Now you need to find the images you want to use in your new theme. Find either an update.zip with a theme or an .apk with a theme chooser theme (if there is both a version for Froyo and GB, use the Froyo version as this will make it easier ) Open it up with 7zip (drag it into the 7zip icon). Now you can do either of two options:
1) You can take the whole drawable-mdpi folder and copy it out. You should probably don’t do this with a Themechooser apk, as they usually don’t have all icons in this folder, as they often lend a few from HDPI.
2) Take only the images you want and copy them to a folder. For example if you want the signal icons, copy the “stat_sys_signal_0” (-4 of course) and copy them out. If you want the statusbar background, copy “statusbar_background”. This way you can mix several themes, take the best of several themes and make your personal theme
When you’re done getting your icons, close the window.
Porting
Now open the Rom’s default framework-res.apk with 7-zip. If you’re going to port a whole theme, delete the /res/drawable-mdpi folder and copy in your own. If you’re going to port just a few icons, open the /res/drawable-mdpi folder and paste your icons. You might want to check if the icons have the same names in the different framework. For example the headset icons can be both “stat_sys_headset” and “stat_notify_headset”. Also if you port from a theme chooser theme, you will have to rename every single .png you port. This is really boring, but necessary. You need to remove the “framework_res” and the “android_systemui” from the beginning of all the names. So “framework_res_activity_title_bar.9.png” needs to be changed to “activity_title_bar.9.png”. Because this is so boring you better keep your renamed icons, so it’s easier to port it to another rom
This is kind of off-topic: my carrier lends network of another carrier. Therefor my phone is allways roaming. This puts a stupid “r” with my signal icons. To avoid this I allways take normal signal icons, copy them, and rename one of the two .pngs from for example “stat_sys_signal_1” to “stat_sys_r_signal_1”. This way I get rid of this stupid “r” and it will always show the normal icons
Packing and signing
Now the porting is done and the next job is to push the new framework to your phone. If you are familiar with adb, you can push it to system/framework on your phone. You don’t need to anything more with the apk before pushing it. Else you can create a flashable .zip for your theme. I’ve attached a .zip with update script (I haven’t created it. Just stole it from one of Elelinux’ add-ons ). Download the zip. Create a folder named system and a folder named framework. First drag the new, modded framework_res.apk to the framework folder, then drag the framework folder into the system folder, before you drag the system folder into the attached zip. If you use Clockworkmod recovery, you can just flash the zip right as it is, but if you use Amon_Ra or want it to be compatible with every recovery because you want to post it, you need to do something.
Unpack autosigner and launch the exe file inside. Drag the .zip into the new window and press sign. It will now appear a new file in the same folder as the file you wanted to sign. Its name is the same, but with “_signed” at the end. You can rename the file as you wish both before and after the signing.
XML Editing:
I decided to add a little section about XML editing as well I really don't know all about this myself, but i can tell how to set it up and some examples to what you can do Even though this may seem really complicated, it's not written in a completely different language, like Java in the smali files, so often it is possible to use logic to get what you want
Tools needed: APK Multi-tool. as well as Java, if you don't have it installed.
Overview:
1) Setting up
2) Examples
3) Finish
Settings up
Download APK Multi-tool and extract/ unzip it to wherever you want ( I have it on my desktop). Now you can place the apk you want to modify (usually the framework_res.apk) in the "Place_apk_for_modding" folder. Then you open the script. If you don't get an error, proceed to b), if you do get an error proceed to a)
a)) If you do get an error where it says something like "java not found" you need to correct the Java path (or install Java if you haven't done that, which you should have) . I had to do this to get it working. First open my computer and click disk C, or D if you have installed Java there. Open programfiles (or whatever it's called in your language) and scroll to the Java folder. Now open the folder there jdk folder or whatever you have there and open the "bin" folder. Look at the top of your window, where it says where on you're computer you are (like Windows: C to the left, and then Programfiles and so on). Right click it and click copy address. Mine is "C:\Program Files\Java\jdk1.7.0_01\bin . Now you can close the window.
Open "My computer" again. On the top bar below the navigationbar, click Sytemoptions (sorry, not really sure what it's called in Englsih, as my computer is Norwegian, please correct me if I'm wrong). On the left click the "advanced" link and in the popup that appears click "environment variables". Scroll down to the "path" variable and edit it. Paste the address you copied and click OK. You should now be able to proceed to b). If you still get an error, please tell me and I'll try to help
b) type 25 and press enter to select current project. Here you will see all the apks in the "Place_apk_for_modding" folder. Select the appropriate number (in this case probably 1) and press enter to continue. Then you hit 9 and enter to decompile it. I cannot really explain it, but it enables you to edit the xmls in the apk. If you try to edit them by using 7Zip, the xmls will be just messed up. When it's done decompiling, you have gotten a new folder in the "projects" folder. In this case it is probably named framework_res.apk. Minimize the script (DON'T CLOSE IT) and you're ready to edit the xmls
Examples on edits:
COMING SOON
Finish:
When you're done editing, open the script again (remember what I said about not closing it? ). Click 11, unless you are editing a non system apk. If you are editing the framework or settings or such, use 11. If you get an error now, you have probably done something wrong, try to see in the log what you have done wrong. Every time I've had an error, I've ended up in bootloop when I've flashed, so it is probably better to just start over. Another tip is to do one thing at the time. For example: you decompile, edit the notification color in pulldown, compile. Take the compiled apk, decompile edit another thing and so on, this makes it easier to not mess up and it also shows what you are doing wrong.
On the "Is this a system apk?" you should probably say y, as I said above. I also usually copy over the files I didn't edit, as this seems safer. Follow the instructions and you should be fine. When you're done and the script is done compiling, you will find a unsigned_**** (for example unsigned_framework-res.apk) in the "place_apk_for_modding" folder. This is your modified apk, and you can try to push it to ur device with an update.zip or adb, if you know how to use that
Well this was the end of my guide for now If there's anything which is unclear or you have other suggestions, feel free to post I've probably forgotten something
Finally after all my attemps to modify the android framework before i have do it correctly. I have changed a couple of things, the lock screen and battery icons so far. The framework I'm modifying is the one on Ele's Gingerbread and i wonder how to get the battery icon percentage 1 by 1 as i saw in some other themes. What i mean is that in the original framework there is only battery icons for 15, 20, 25 and so on, and if i push the 16, 17, 18, 19 they won't work. Is Theme Chooser the one on charge of this? how can i get that? some help please?
(Also tryed to theme a sense rom, but everything was messed up, i guess because of sense or maybe I did something wrong)
So thanks for your guide, really helpfull
Yeah, I've never tried to theme Sense so I don't know. It is probably possible to make icons for every %, but then you'll have to decompile using APK tool, and it is harder. I don't know how. If you want to try, you could try asking a question here
thanks
so funny=))
i'm tried
Great guide helped me a lo thx.
Finally, someone who CAN explain it...
I'm now porting ICS to GB (no cm7), cause I think CM sucks.
mDroidd said:
Finally, someone who CAN explain it...
I'm now porting ICS to GB (no cm7), cause I think CM sucks.
Click to expand...
Click to collapse
Hmm, ICS themes can be made really awesome, if you do some more advanced stuff. For example you want to remap the pulldownbar a bit, and change som text colors. But to do this you need to use a tool like APK multi-tool, and it is a bit more advanced. If you want to, I can create a new section where I show how to this
Thank you.
GUIDE UPDATED! Added a section about XML editing really quick, probably forgotten something and such, so just ask if there is something you don't understand This is for those who are getting used to the PNG editing and want to proceed to something slightly more advanced, for example you 7Tosta
Cheers
BTW: I should've reserved the 2nd post, this is getting messy
Edit: If there's anything specific you want me to add to the EXAMPLES section, tell me
Hey people, I've just found it at O3D forums and I think I should share the information, as I don't have time for creating a good tutorial myself.
This way you can change colors for your own likes and make a lot kind of themes.
Before starting you should have your Apktool environment set up.
1. (only if you never saw APKTOOL in your life, otherwise, just jump it)
1· Download and install latest version of Java JDK
2· Download latest version of APK Multi-Tool as we'll be using it for un/packing APKs and push/pull them from/to our device.
3· Extract it anywhere you may like. If posible, in C:/ to avoid any kind of problems. Be sure to read README file before asking something about it.
4· Run Setup.bat, type 3 and press Enter. Close it.
5· Run Script.bat, type 0 and press Enter. Now let's type our framework's path.
6· /system/framework/framework-res.apk for basic framework file. This will be pulling it out from our phones.
7· Repeating Number 5, type /system/framework/lge-res.apk for LG's framework file.
8· Now move to X:\...\APK-Multi-Tool\place-apk-here-for-modding\ and copy both apks (framework-res + lge-res) and paste it at X:\...\APK-Multi-Tool\other\
9· Run Setup.bat again, type 2 and press Enter. Now both frameworks should be installed and we are ready to un/pack APKs from the version we're actually using (v30A/B/C/D...). Close it.
10· Back in Script.bat, type 0 again followed by Enter, then type the path of your desired APK. (/system/framework/xxxxxx.apk for frameworks & /system/app/xxxxxx.apk for apps). After pushing it, select it as your actual project.
11· Now type 9 followed by Enter. This will unpack our APK.
12· Now is the time for tunning anything you want to. Go to X:\...|APK-Multi-Tool\projects\xxxxxx.apk\ and you'll find there everything.
13· When it's done, let's re-pack it typing the option 11 followed by Enter. When repacking gets done, it will ask if you want to use any files from your original APK. Tell it Yes, otherwise your apk won't get signed.
14· When the extracting is done, move to X:\...|APK-Multi-Tool\keep\ and erase everything there BUT META-INF folder + AndroidManifest.xml. Now press anything at APK Multi-tool window and you'll get your APK ready to go.
15· Now type 8 to push it back to your phone and type the desired path. If it cames from /system/app/xxxxx.apk or /system/framework/xxxxx.apk.
If you get any error recompiling it, you should take a look at the log, typing 23 and fix it at the projects folder.
Click to expand...
Click to collapse
2.
potaturrias said:
When i maked this theme (my first theme) y used trial and error procedure.
The first step is replace or edit 9.png. pictures in drawable-hdpi folder located in framework-res.apk and lge-res.apk, you can do this quickly using this tools:
http://jgilfelt.github.com/android-actionbarstylegenerator (Check that the names of new pictures match with the old pictures)
http://android-holo-colors.com/
Many images have to edit them by hand
If you put more files than originally,for example switches in lge-res drawable-hdpi, you will get an error when try to compile.
The second step is replace xml files in drawable folder using xml files from zip file that you downloaded in the previous step.
If you don't get the desire result you have to edit styles.xml or drawable folder files or layout files to change backgrounds colors, text color,etc.
Remember there applications with lines in XML files that reference to framework or lge-res, for example:
android:textColor="@*android:color/transparent makes reference to transparent color defined in framework-res and
android:textColor="@com.lge.internal:color/transparent makes reference to transparent color defined in lge-res.
I hope that this mini guide help you, remember that you can make your theme based on this theme, will be easier i think.
Click to expand...
Click to collapse
Thanks to @potaturrias!