Today I am proud to present my new creation EAIT - EASY APK IMAGE THEMER.
DISCONTINUED
I don't use Windows anymore, so any support for this script/app is dropped.
Download from Mediafire or from ATTACHMENT.
I see sometimes peoples get very shocked after they see my modded versions of whatsapp, so I thought lets make something which helps to *any* normal android user to edit any apk.
Keep in mind that this is not much advance tool and won't be able to do all editing.
So what exactly is EAIT, it's a simple tool which extracts APK to let you edit images and then compress it back to .apk to install on your phone.
What you need?
JRE 6/7 -download it from java.com
Any good image editor like l Photoshop, GIMP or Paint.net
steps:
1. Download .rar from above.
2. Extract in C:/
3. Take backup of app(by ES explorer) you want to edit and move it to "PLACE-APK-HERE"
4. Run main application "easy apk image themer" from folder.
5. See your current apk will be listed on top.
6. Press 1 and enter to extract
7. Minimize the window and go to 'Project' folder. You'll find appname.apk folder, click on it.
8. Browse through "res" folder and see images inside drawable folders. Edit then with help of Photoshop/GIMP/Paint.NET.
Warning: rules of editing
>never edit "imagename".9.png files or you may get force close.
>If you want to replace image then choose something that has same resolution
9. After all editing maximize the window you previously minimized.
10. Press 2 and hit enter, wait for a while.
11. Press 3 and hit enter wait for a while.
12. You will find Signed-appname.apk in your "place-apk-here" folder
13. Send that app to your phone and install ( you may need to Un-install previous one)
14. Enjoy... and press thanks if you liked it
Report any bugs/problems here only.
Some images
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
the result:-
reserved
bump
Here is a Mediafire mirror for you
I've always wanted to make an inverted Facebook app, so I might give this a shot. Thank you for your work
I’m not trying to rain on OP’s parade, but out of curiosity, aren’t there similar tools for Windows already? Sometimes with even better GUIs like elesbb's GUI APK Tool
This looks like APK Multi Tool, minus all of the extra features. Even the folder structure is the same.
please help
i did everything as mentioned in ur tutorial. i colored some whatsapp smiles. and recompiled the apk and signed it. uninstalled my previous whatsapp and installed new one. but whenever i try to open a new contact to chat with it force closes. am attaching the edited apk. plz help me.
i didnt changed any resolution of images. just coloured them.
http://www.mediafire.com/download/ew7rgzz6qaa95uu/signed_whatsapp.apk
Interesting tool, would love it if i'd see screenshots and shared apks of modified apps! :good:
Great work.!!!
Hi Ankush,
You can use the Mediafire mirror.
http://www.mediafire.com/view/2zomqhmuoknb0gm/APK-Image-Themer_3.rar
BTW, amazing job now I can theme my apps...:good::good:
Downloaded
Ankush menat said:
Today I am proud to present my new creation EAIT - EASY APK IMAGE THEMER.
Download from dropbox
Please provide me mediafire mirror(mine account is not working properly)
I see sometimes peoples get very shocked after they see my modded versions of whatsapp, so I thought lets make something which helps to *any* normal android user to edit any apk.
So what exactly is EAIT, it's a simple tool which extracts APK to let you edit images and then compress it back to .apk to install on your phone.
What you need?
JRE 6/7 -download it from java.com
Any good image editor like l Photoshop, GIMP or Paint.net
steps:
1. Download .rar from above.
2. Extract in C:/
3. Take backup of app(by ES explorer) you want to edit and move it to "PLACE-APK-HERE"
4. Run main application "easy apk image themer" from folder.
5. See your current apk will be listed on top.
6. Press 1 and enter to extract
7. Minimize the window and go to 'Project' folder. You'll find appname.apk folder, click on it.
8. Browse through "res" folder and see images inside drawable folders. Edit then with help of Photoshop/GIMP/Paint.NET.
Warning: rules of editing
>never edit "imagename".9.png files or you may get force close.
>If you want to replace image then choose something that has same resolution
9. After all editing maximize the window you previously minimized.
10. Press 2 and hit enter, wait for a while.
11. Press 3 and hit enter wait for a while.
12. You will find Signed-appname.apk in your "place-apk-here" folder
13. Send that app to your phone and install ( you may need to Un-install previous one)
14. Enjoy... and press thanks if you liked it
Report any bugs/problems here only.
Some images
the result:-
Click to expand...
Click to collapse
Will try it soon cool tool will try to mod some apps
+1 Nice tool
himanshu.khanna said:
i did everything as mentioned in ur tutorial. i colored some whatsapp smiles. and recompiled the apk and signed it. uninstalled my previous whatsapp and installed new one. but whenever i try to open a new contact to chat with it force closes. am attaching the edited apk. plz help me.
i didnt changed any resolution of images. just coloured them.
http://www.mediafire.com/download/ew7rgzz6qaa95uu/signed_whatsapp.apk
Click to expand...
Click to collapse
You've edited one .9.png which is causing FC
So from what I am seeing, this allows you to easily edit images in apps. Does it however facilitate color changing? I'd like to theme facebook into the one team blackout has
asdfasdfvful said:
So from what I am seeing, this allows you to easily edit images in apps. Does it however facilitate color changing? I'd like to theme facebook into the one team blackout has
Click to expand...
Click to collapse
Facebook is mostly coded with HEX color codes and not Images...
You should use APKtool by brut.all
There are tons of guide available for How-to-theme-with-Apktool on XDA follow them.
Ankush menat said:
Facebook is mostly coded with HEX color codes and not Images...
You should use APKtool by brut.all
There are tons of guide available for How-to-theme-with-Apktool on XDA follow them.
Click to expand...
Click to collapse
Mhm... Apktool keeps on giving me issues. I guess I'll just love without theming
Sent from my One S using XDA Premium 4 mobile app
thanks but,
Ankush menat said:
You've edited one .9.png which is causing FC
Click to expand...
Click to collapse
how do i identify that which one is .9.png file? any suggestions?
himanshu.khanna said:
how do i identify that which one is .9.png file? any suggestions?
Click to expand...
Click to collapse
See the Image...
Those image files who have name like name.9.png will be visible as name.9 in Windows dont edit them
please help
Ankush menat said:
See the Image...
Those image files who have name like name.9.png will be visible as name.9 in Windows dont edit them
Click to expand...
Click to collapse
see i edited these files and they dont have .9.png in there name.View attachment 2479108
Sure, this is similar to some of the other apk editors out there like ApkTool/ApkMultiTool but this is NEWB friendly as the op expressed. I think this is a great program for someone just starting to learn about the android os and curious about themeing their own applications. Wish I had this tool when I first started themeing with apk multi tool. Without all the fluff and extra features, this software will be very helpful for users who are specifically interested in modifying the look of their applications. Good job Ankush
Anyone have any tips on editing Hangouts.apk? More specifically I would like to modify the emoji. Does framework-res.apk need to be included or something?
Sub'ed
OK so far so good, anyone know the name or where in the APK folder (which drawable folder) I could find the background images. I am working on the facebook messenger from my Sprint GS3.
Well I managed to edit the color of one of the pictures inside an app (ended up using the clock app) and now I cannot get it to install. I deleted the old clock and tried installing from es and also flashing from TWRP but could not find the file there (guess because it was not a .zip). Has to be in system/app folder.
Related
Create custom FlipFont files with font preview and icon.
*At present this only works on Galaxy S phones, but should work if FlipFont is ported or released on other devices*
For Captivate users you will need to enable side loading apps first, because AT&T sucks. Check this thread if you still need to so this.
Why do we need to jump through hoops?
It seems that the fonts in the MonoType apks on the market are digitally signed. This is what is preventing the use of any old font being added to an APK. I believe the FlipFont app is looking for the digital signature in the font within the APK. If its not there, it does not use the font and reverts to using the default font. It MAY be possible to edit the FlipFont APK so that it no longer looks for the digital signature. This should allow us to use any font without jumping through hoops.
If you can find the FlipFont Apk please post its location or better yet PM me with its location. If your really feeling spunky ADB pull the file off your phone and post it here, so we can take a look at it.
Lets trick FlipFont. Heres what you need.
Apk Manager 4.8 found here. This will allow you to decompile and edit the APK attached at the bottom of this link. Dont worry its much easier then it sounds.
FontCreator 30 day trial found here. This is a windows only program. If you know of a cross platform, open source or FREE font editor please let me know. The one on source forge is not stable enough for use at present and its install needs its own walk through.
***Link for FontCreator has been downgraded to version 5, which will allow you to save fonts during the 30 day trial, unlike version 6. Thanks sigeltek***
Photoshop or Gimp. Note you only need this if you want to edit the icon file for the app. I will not go over editing the icon in the walk-through, this should be pretty self explanatory.
Digitally Signed Monoglyceride font found here For some reason Mediafire sees this as a jpg file. Click the download this image button in the link and you will see its actually a .ttf file. ODD :ºp
The Monoglyceride APK attached at the bottom of this link.
Walk-through editing the Monoglyceride font with FontCreator.
Open the Monoglyceride.ttf font with FontCreator
Open the .ttf font you want to use.
Make note of the number of Glyphs at the bottom right side of FontCreator when you have your font selected.
Click the Monoglyceride font window in FontCreator and choose edit>select all at the top of the program.
Hit delete on your keyboard. This should delete everything in the Monoglyceride window.
click Insert>Glyphs... at the top of the program
type in the number of glyphs your font has in it and hit ok. You should now see a bunch of empty glyphs in the Monoglyceride window.
Now switch back to your font and again hit edit>select all
Hit edit>copy
Swith back to the Monoglyceride window and click edit>select all... and then edit>paste special...
This will open up the Paste Special window. Put a check in every box in Item section and choose "Add Mappings" in the mappings section and then click OK.
If this worked properly you should see all of the characters and mappings from your font in the Monoglyceride.ttf window.
Close your fonts window in FontCreator
Click File>Save as, rename the Monoglyceride.ttf with the name of your font.
Thats it you now have a digitally signed font. If you want to double check, open the new font in windows and you should see that the font is still technicaly the Bauhaus font, but it now contains your fonts characters. :º)
*** eweo911 has just informed me of a quick way to resize the font if it is too large. You can check to see if its too big by double clicking on one of the glyphs after preforming the Paste Special section of the instructions above. Its best to choose one of the uppercase letters. If the glyphs image goes above the guide shown for cap it WILL be a large font on the phone. These guides are set in the perfect position for our phones screen.
Here is the quote from eweo911:
I have figured out how to make the fonts smaller so you can adjust them to fit the screen better. Not sure if anyone else has done it yet but here is what I did.
After you do the "Paste Special" in font editor (per Ritalins how-to), you will need to make sure all of the glyphs are highlighted in the new font. Yiou will then go to "Tools" and then "Glyph Transformer". Once there, you will select the "Selected" button, then under Available Features you will expand the Outlines tree. Select scale and then you will have two variables for Outlines-Scale. Choose an integer that you want to test with and then hit "ok". Save as your new font name and that should be it.
Click to expand...
Click to collapse
Walk-through editing the apk with Apk Manager 4.8
Download the monoglyceride.apk listed below.
Copy the apk into place-apk-here-for-modding folder in the Apk_Manager_4.8 directory.
Run script.bat and choose option 9
Open Apk_Manager_4.8\out\assets\fonts in explorer
Replace existing monoglyceride.apk font with the .ttf font you edited in FontCreator
edit all XML, yml and smali files to include the font name or font.ttf depending on the entry in the original file. Just replace monoglyceride in these files and folder with the name of your font. Pay attention to capitalization in the existing files, and make sure to do the same when replacing with your file name.
Edit the last folder name in the smali folder tree from monoglyceride to the name of your font
Edit the icon.png in the drawable folder with one of your own.
Compile apk - option 11
Sign apk option 12
Check the Apk_Manager_4.8\place-apk-here-for-modding folder and you should see repackaged-signed.apk along with the original monoglyceride apk. Rename your new signed.apk file the same as the monoglyceride one and just check the name at the end with your font name. This is not REALLY necessary, but do it for consistency sake.
install apk on your phone
This might take you about 30 minutes the first time you run through it, but after you get accustom to the steps you should be able to bang through it in about 10 minutes.
Well here you go, here is my first custom FlipFont APK.
Monoglyceride
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
http://www.mediafire.com/file/b63fa44f7ks7e3d/com.monotype.android.font.monoglyceride.apk
Its working perfectly for me, but let me know if you have any issues.
If you create a font with these instructions, please share it with the community. There is a thread in the Vibrant theme section found here.
Save this thread as a favorite or subcribed thread and you can easily view it and download the fonts in the XDA tapatalk app on your phone.
You will need Astro or Linda file browser to be able to download the fonts from your phone.
tried your mono .apk and got nothing. shows up on the flipfont list just fine, asks to reset the phone but there's no change when it comes back. -JH2 -ext2.3 lag
edit: worked on wife's phone. -stock w/oc'd kernel -ext2.1 lag
solufein said:
tried your mono .apk and got nothing. shows up on the flipfont list just fine, asks to reset the phone but there's no change when it comes back. -JH2 -ext2.3 lag
edit: worked on wife's phone. -stock w/oc'd kernel -ext2.1 lag
Click to expand...
Click to collapse
It's something in the lag-fix that kills flipfonts. I initially thought it was JH2, but I used them fine on stock+rooted. Doing the One-Click fix killed flipfonts, so I did RyanZA's phone only fix.
PS, all of the fonts in the Vibrant thread work swimmingly.
Works fantastic for me, thank you for posting and sharing. While I personally do not like the font posted, it does work and can't wait to see more.
benclayton said:
It's something in the lag-fix that kills flipfonts. I initially thought it was JH2, but I used them fine on stock+rooted. Doing the One-Click fix killed flipfonts, so I did RyanZA's phone only fix.
PS, all of the fonts in the Vibrant thread work swimmingly.
Click to expand...
Click to collapse
Glad it works. Not sure why it brakes with the one click fix. Most of the users in the Vibrant forums are using the RyanZA lag fix. Will remember this if someone asks why its not working. Thanks for the heads up.
smeltn said:
Works fantastic for me, thank you for posting and sharing. While I personally do not like the font posted, it does work and can't wait to see more.
Click to expand...
Click to collapse
Well there are quite a few there, but I understand if they are not all to your liking. I am now charing you with submitting one of your own. It will take you about 20 minutes the first time, but after you get the hang of it, you can get one done in about 5 minutes.
im running CFLagFix 1.80 and changing fonts doesnt work for me either
cachookaman said:
im running CFLagFix 1.80 and changing fonts doesnt work for me either
Click to expand...
Click to collapse
Do any of the other flipfonts that came with the phone work?
Sent from my SGH-T959 using XDA App
ritalin said:
Do any of the other flipfonts that came with the phone work?
Sent from my SGH-T959 using XDA App
Click to expand...
Click to collapse
the captivate doesnt come with any other fonts other than default
cachookaman said:
the captivate doesnt come with any other fonts other than default
Click to expand...
Click to collapse
What??? Thats robbery!!!
Well if you would do me a favor and download any of the flipfonts in the market and try it. If it doesnt work just uninstall for the refund.
Does the fix your running move the apps or another portion of the OS to the SD card or internal SD? If so my guess is that it does not read them in time for the launch of the OS and android loads up the fallback font instead.
As stated the RyanZA lag fix works great and the fonts work with it. I score about 2100 Quadrant with RyanZA lag fix installed. Might want to give it a try.
no longer supported visit http://forum.xda-developers.com/showthread.php?t=1310151
Can this be used to change the main icon of an app?
Also can it be used to theme an app?
Thanks for this!
Sent from my GT-I9100 using Tapatalk
jameslfc5 said:
Can this be used to change the main icon of an app?
Also can it be used to theme an app?
Thanks for this!
Sent from my GT-I9100 using Tapatalk
Click to expand...
Click to collapse
yes and yes
the script in v5.0 the command numbers are the same as in 4.9 ie, to read log it's still option 21 in 5.0, but under the about option it says v5.0 is this correct, or should the command numbers be different...
I keptthe options the same there is some more tweaking that needs to be done and not being the original guy who wrote this I am reluctent to change it much. This is basically a unofficial release of his script until he decides to make more updates to this but feel free to report anything that does not work or if you see a patch I might of missed or over looked a change needed
Sent from my Droid using XDA Premium App
Wow! I was looking at APK Manager 4.9 just last night but didn't download it since I noticed it hadn't been updated since last year.
I just happened to Google again right now, and noticed this 5.0 that was just released this morning.
Thanks for updating this. I'll be playing around with it tomorrow...
I'm stumped...I'm trying to run this on Vista. I have Java installed, but when I run the script I get:
Java was not found, you will not be able to sign apks or use apktool
Press any key to continue . . .
I realize this is probably not a problem with your tool, but I'd appreciate any help offered to get it working.
***Edit*** Found my problem. When I set my path for Java I used a : instead of a ; it's working perfectly now.
I have yet to be able to decompile an app with dependencies using option 10, the managers says to drag the dependee apk in this window or type its path, I can't drag and drop anything to the manager and I don't understand type in its path, do I type the path of the location of the apk on my computer or what? Also where should the framework-res be installed, in the other folder? I didn't install apk manager in my Android folder where my SDK is located it's just on my computer under a general file/folder, does it matter where it's installed? Please help, I've asked this question on the 4.9 thread but got no response...
oh yeah I forgot to mention that the apps I'm trying to decompile using option 10 are non system apps like the ones that you get from the market that can't be decompied using option 9...
has the linux version script been updated to include the option for installing resources for dependecies
adude247 said:
I have yet to be able to decompile an app with dependencies using option 10, the managers says to drag the dependee apk in this window or type its path, I can't drag and drop anything to the manager and I don't understand type in its path, do I type the path of the location of the apk on my computer or what? Also where should the framework-res be installed, in the other folder? I didn't install apk manager in my Android folder where my SDK is located it's just on my computer under a general file/folder, does it matter where it's installed? Please help, I've asked this question on the 4.9 thread but got no response...
oh yeah I forgot to mention that the apps I'm trying to decompile using option 10 are non system apps like the ones that you get from the market that can't be decompied using option 9...
Click to expand...
Click to collapse
realy no one...
This is perfect. I've been finding myself playing with quite a few apk's lately and going through a bunch in order to test them. This will save me quite a few steps. Thanks.
Great update. Thanks
Here is a log of the error when decompileing an apk. It works fine in 4.9 with apktool 1.3.1 but gives this error in your 5.0. I have seen this where one version of apktool will decompile the apk but the newer version will not.
+1
Sent from my SCH-I500 using XDA Premium App
adude247 said:
I have yet to be able to decompile an app with dependencies using option 10, the managers says to drag the dependee apk in this window or type its path, I can't drag and drop anything to the manager and I don't understand type in its path, do I type the path of the location of the apk on my computer or what? Also where should the framework-res be installed, in the other folder? I didn't install apk manager in my Android folder where my SDK is located it's just on my computer under a general file/folder, does it matter where it's installed? Please help, I've asked this question on the 4.9 thread but got no response...
oh yeah I forgot to mention that the apps I'm trying to decompile using option 10 are non system apps like the ones that you get from the market that can't be decompied using option 9...
Click to expand...
Click to collapse
First you need to make sure the path has no empty parts
C://androidfiles/apk_manager_5.0 is fine, C://android files/apk_manager_5.0 would create issues.
You only need to install new framework`s in the following cases:
1. You decompile a system apk from a different Android platform then before (Froyo, Gingerbread eg.) - in that case you install a new framework-res.apk
2. You decompile a system apk with dependencies to a 2nd framework like in Sense ROM`s or Samsung ROM`s - in that case you will in case of Sense install a new com.htc.resources.apk
You can install these with 10 option and just drag the framework in the bottom of the script window. In the rare case this fails (never happened to me), you can manually install frameworks in apktool:
open a terminal/command prompt
cd into the folder, where your apk is located
(in this example sensation)
now type this:
apktool if framework-res.apk sensation (sensation will be a tag name of the framework)
and then after type this:
apktool if com.htc.resources.apk sensation (sensation will be a tag name of the framework)
You don`t need the tags, but in case you are working on multiple projects with apktool, it makes sense. In any case I doubt you will have issues, if you drag framework to the correct area.
zelendel said:
Here is a log of the error when decompileing an apk. It works fine in 4.9 with apktool 1.3.1 but gives this error in your 5.0. I have seen this where one version of apktool will decompile the apk but the newer version will not.
Click to expand...
Click to collapse
1.3.1 is always good to have, since sometimes new apktool versions create issues (and vice versa). For that reason I always have several versions on hand so I can just drag them in "other" folder when needed.
Exactly how do I change the path to include adb.exe, which in Android SDK 12 is in the C:\Program Files (x86)\Android\android-sdk\platform-tools path.
Because Every time I launch the script in APK Manager, I get this message "Adb was not found. You will not be able to manipulate the files on your phone". I would really like to get this working. Thanks guys.
Hi.
I would have preferred to have figured this out for myself but I'm stumped here. An unmodified framework decompiles ok but any other apk fails.
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
I've attached the log and the unmodified apk I'd like to mod.
Hi
Im trying to edit the framework-res.apk from my rom, to change the battery icons.
Im using APK manager to decompile the apk, then i replace the stat_sys_battery pngs with 30 custom ones. after that i edit the stat_sys_battery.xml and zzzstat_sys_battery.xml to include my pngs at specific battery percantages.
that all goes well, but when i try to compile the .apk i get some errors.
first i have to type y or n i its a system app.
i press y and enter
after that it says to navigate to /apkmanager/keep and delete all files i edited.
but all files in this folder is the stock ones (IE unedited)
i have tried a bunch of things:
1. do nothing and continue
I end up with a 4 KB unsignedframework-res.apk containing onlt meta info
2. I delete the stock versions of the files I edited
I end up with exactly what was in the keep folder, an .apk without the files which I deleted
3. I delete the stock versions of the files I edited, and replace them with my modified files
I end up with what seems to be what i need (when i open the .apk in 7-zip i see all of my pngs and xmls) but when i flash it i end up with the battery unknown icon
Can anyone enlighten me??
Ok, I have no more Java or adb.exe issues. The problem is, once I choose 9 to decompile, the cmd window closes and nothing gets decompiled. Any workaround for that? I tried to change the compatibility to XP sp3 but no help.
Hey guys iv had trouble discovering a version of apktool that would actually work on Samsung stock firmware !
Although I think I may have just found one which can decompile: HERE
This is confirmed working on CM9 .apk files.. Samsung on the other hand has been troublesome im hoping one of the dev's can offer some sort of explanation.
CRASH COURSE FOR NOOBS
First things first, you can to extract your "framework-res.apk" from "system/framework" of your rom.
You will then have to set your framework file in apktool.. Two ways of doing so:
If you have apktool installed in C:\Windows open a CMD window and type the following command: "apktool if framework-res.apk".
or
You simply rename your framework-res.apk to "1.apk" and place it in "C:\Users\<YOURUSERNAME>\framework".
You then want to extract "Apk Manager ICS" from the zip you downloaded & then place the apk you want to modify in "place-apk-here-for-modding" folder.
At this stage you can open up "Script.bat" which will execute a CMD window with a bunch of different options..
Enter "22" to set your target project, then "9" to decompile. Once the decompile completes you can then navigate to the "Apk Manager ICS/projects" folder where you will see the decompiled source of the apk.
Make your modifications to the apk and take note of the files you have edited, this is important.
To recompile select option "11". If errors persist this may be due to a incorrect commands/functions you have used in your modifications, review the log..
Navigate to "Apk Manager ICS\place-apk-here-for-modding" where you will now find a "unsigned<APKNAME>.apk". This is a recompiled version of the original apk! Or semi depending on the errors you received.
Open this file with 7zip/Winzip or what ever you use and extract the files which you had modified from the apk.. eg. SecContacts.apk\res\layout-ar-rAE\call_detail_delete.xml
You then want to open up the original apk in "Apk Manager ICS\place-apk-here-for-modding" just named "<APKNAME>.apk" in 7zip/Winzip overwrite the files with the ones you have just extracted from the unsigned version. By using this tactic you will keep the original signatures on the .apk..
Post back your results.. If anyone can add any information to this post please feel free too ! I just though id share my experiences so far.. Hopefully someone can shed a little more light!
Good luck !
God dam it, cant get it compiling anymore.. Someone figure this out please..
Well my experience with Apk Manger has been that the same one I've been using for Gingerbread works just fine on ICS, so no need for a new one necessarily. But I did find that sometimes Apk Manager could not decompile certain apks...where APKTOOL could. I do like to use Apk Manager, so I found success by decompiling them with APKTOOL, then transferring the files over to the projects folder of Apk Manager, then the rest you just do normal.
As for your instructions on how to use Apk Manager,
you did a good job describing the fundamentals of how to decompile, and recompile but I find the major flaw in your instructions is when you say "I had recieved errors when doing so.. ignore this for now." DON'T ignore that! That is saying you have an error
So if you get that error when it asks you yes or no, choose "no" and it will abort. Then type "21" and a red CMD screen will popup and run and error log. Its not real easy to read, but if you do it you will find your mistake in your edits. Correct these mistakes until you DO NOT get any errors, then proceed.
If you do this correctly and receive no errors then the "unsigned<APKNAME>.apk" that will be created in the "place-apk-here-for-modding" folder is done. Pull it out and remove the unsigned part.
The copy and paste method just leaves room for more errors, IMO. Ones that are not logged.
Good Luck!
X
EXPERIMENT said:
Well my experience with Apk Manger has been that the same one I've been using for Gingerbread works just fine on ICS, so no need for a new one necessarily. But I did find that sometimes Apk Manager could not decompile certain apks...where APKTOOL could. I do like to use Apk Manager, so I found success by decompiling them with APKTOOL, then transferring the files over to the projects folder of Apk Manager, then the rest you just do normal.
As for your instructions on how to use Apk Manager,
you did a good job describing the fundamentals of how to decompile, and recompile but I find the major flaw in your instructions is when you say "I had recieved errors when doing so.. ignore this for now." DON'T ignore that! That is saying you have an error
So if you get that error when it asks you yes or no, choose "no" and it will abort. Then type "21" and a red CMD screen will popup and run and error log. Its not real easy to read, but if you do it you will find your mistake in your edits. Correct these mistakes until you DO NOT get any errors, then proceed.
If you do this correctly and receive no errors then the "unsigned<APKNAME>.apk" that will be created in the "place-apk-here-for-modding" folder is done. Pull it out and remove the unsigned part.
The copy and paste method just leaves room for more errors, IMO. Ones that are not logged.
Good Luck!
X
Click to expand...
Click to collapse
Thanks for the input, I agree with you 100% about the error section.
My question is tho how are people decompiling camera.apk & contacts.apk to make these great mods we see.. there MUST be a way to successfully compile a sammy .apk.
Works perfectly fine with AOSP/CM9 you can decompile & recompile no problems..
I just use this great tool for decompiling samsung apks
http://forum.xda-developers.com/showthread.php?t=1053227
Sent from my GT-I9300 using xda premium
firefds said:
I just use this great tool for decompiling samsung apks
http://forum.xda-developers.com/showthread.php?t=1053227
Sent from my GT-I9300 using xda premium
Click to expand...
Click to collapse
Any luck recompiling tho ?
I also use apkmanager i got two sets of apktool i use..
also some apk's like secsettings.apk you need to raise the heap size
for good decompile and recompile..
No problems decompile and recompile on any file cm9 or sammy roms
if you want i help you sort your prob PM me
Greets
Dragon
Wanam has provided a working APK Manager which can be found in the OP of this thread.
And also I created a batch script method for simple decompiling and recompiling but only for framework-res.apk.
I havent used any of the other repacks. I could modify it to use any apk if there is a need.
Its in my sig anyway and definitely works with framework-res.apk
fOmey said:
Any luck recompiling tho ?
Click to expand...
Click to collapse
Yep.
There is a bug in apktool.jar though.. there are problems with the decompiling of some plurals.xml which you need to fix manually
Sent from my GT-I9300 using xda premium
firefds said:
Yep.
There is a bug in apktool.jar though.. there are problems with the decompiling of some plurals.xml which you need to fix manually
Sent from my GT-I9300 using xda premium
Click to expand...
Click to collapse
Could you provide a quick start guide to these manual fixes?
Framework-res.pk is the only file I can't recompile.
So i had a strange problem.
I do everything like this manual.
But every Time when i want to replace the framework-res.apk after it hangs in bootprocess. Its the same when i do nothing in the .apk, Just decompile and recompile.
I had this Problem on every Tool.
I want to mod the framework from CM9 on my Galaxy S2.
So what can i do? Whats the Problem?
nobnut said:
Wanam has provided a working APK Manager which can be found in the OP of this thread.
Click to expand...
Click to collapse
I confirm : working for me
I followed the instructions in the first post and got up to running Script.bat, but then I got the dreaded "Java not found" even though I have the latest java installed.
I read that the environmental variables need to be edited. Could someone give me an idea as to what the PATH should look like? Thanks in advance.
D1358531 said:
I followed the instructions in the first post and got up to running Script.bat, but then I got the dreaded "Java not found" even though I have the latest java installed.
I read that the environmental variables need to be edited. Could someone give me an idea as to what the PATH should look like? Thanks in advance.
Click to expand...
Click to collapse
Copy the path to /bin folder inside the java directory..usually c:\program files\windows\java_jdk7\bin...and then right click on computer shortcut and select properties..click on advanced and then environment variables..in the pop up box..click a new path and paste the path to the bin folder..apply it and the save it..
Sent from my iPad using Forum Runner
zoot1 said:
Copy the path to /bin folder inside the java directory..usually c:\program files\windows\java_jdk7\bin...and then right click on computer shortcut and select properties..click on advanced and then environment variables..in the pop up box..click a new path and paste the path to the bin folder..apply it and the save it..
Sent from my iPad using Forum Runner
Click to expand...
Click to collapse
So, I should type "PATH" for the variable name? This will replace the PATH value that is already there, correct? Can there be any spaces in the path?
D1358531 said:
So, I should type "PATH" for the variable name? This will replace the PATH value that is already there, correct? Can there be any spaces in the path?
Click to expand...
Click to collapse
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
zoot1 said:
Click to expand...
Click to collapse
Ok, thanks...I'll try it ina bit. Will I.need to reboot?
D1358531 said:
Ok, thanks...I'll try it ina bit. Will I.need to reboot?
Click to expand...
Click to collapse
I don't think so..
Sent from my iPad using Forum Runner
zoot1 said:
I don't think so..
Sent from my iPad using Forum Runner
Click to expand...
Click to collapse
OK, that didn't work...I think I have to include the Apk Manager ICS in the path somewhere, maybe even the Script.bat?
-----
What is this?
This is an elementary reference/guide that I would like to share with anyone interested in customizing or modifying the Graphical User Interface of their custom ROMs - which includes, but is not limited to backgrounds, toggles, system icons etc.
It is based completely on my experiments playing around with ROM elements, as well as help from users across the web.
Yet another How to Theme guide?
Yes. And No.
Themes are an excellent way to achieve our purpose, and provide much varied levels of customization. They are much more extensive and require knowledge which is outside the scope of this guide.
Themes do not replace any system files or images. Instead, they create references via XML files, which direct your OS to use that which is supplied by the theme instead of the stock elements.
This gives greater flexibility and compatibility, and is without doubt a lot safer.
However, in this guide we will be directly manipulating, modifying and changing the system files and images of your custom ROM instead of taking the XML route. This will only help to alter what you pack beforehand inside your ROM. Not that which you may add later from the device.
Both methods have their appeal, and we will not debate on that.
DISCLAIMER
As with all guides and tutorials, please proceed with caution. If the end-result is to your liking, give yourself a pat on the back. But if something goes wrong, please don't come running for my head.
Before you jump to searching for a suitable tool to de-compile apk files, please note that we do not require to de-compile any apk or jar files for this purpose. We are simply working on image elements (PNGs ONLY) which can be replaced without any fuss.
The posts that follow will be updated and improved upon regularly based on your views and opinions. Kindly do not take to petty quarrels. If you find something objectionable, please report to the moderators and let them choose the course of action.
By the end of these few posts, if you are able to create something that gives you satisfaction, please share it with others too.
Your creations, no matter how 'unique' will all be gladly put up here.
--
What to edit?
---
Let us begin by extracting the ROM package to a directory.
When you open this new directory, you will find that it contains the following 3 components -
A folder called META-INF
A folder called system
Another file named boot.img
It is the folder named system, that we are concerned with. But when you open this folder, you again find yourself looking at numerous other folders.
For our purpose, we require only the folders named app and framework.
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Let us begin with the app folder.
The app folder evidently contains the apk files that you have chosen to package with the ROM. It is inside these apk files that our images reside.
As stated earlier, for the purpose of this tutorial we do not need any tools to de-compile the apk files. We treat them as simple archives.
We choose Contacts.apk to start with. This is the apk file that we would want to edit for changing our dialer background.
Open this apk file as you would open any other archive using WinRAR, 7-Zip etc. You should now see the following inside -
Folder named META-INF
Folder named res
XML file named AndroidManifest
Two other files namely, classes.dex and resources.arsc
Now enter the res folder and you find several more folders with prefix drawable, layout, menu and mipmap. Without going into details as to what each folder is for, I would just say that it is the bunch of folders having the prefix drawable and mipmap that we are concerned with.
:good: The mipmap folders usually contain the app's icon which appears in the app drawer, or other places as relevant. The images are usually the same in all folders - xhdpi, hdpi, mdpi.
The xhdpi icons are somewhere around 96-100px. This is completely upto you to decide how you want your app icon to look like.
The hdpi icons are usually about 75% of the size of xhdpi, while mdpi are a further 66% of hdpi icons in size.
The images are all in PNG format. To edit them you would require a suitable program. I personally use Adobe Photoshop. Other useful ones are GIMP, Pixlr Studio, fotographiX, Corel Photopaint, Microsoft Picture Manager - or any combination that suits you.
In case you want to work with vectors (graphics that use vectors and mathematical functions to describe images rather than fixed bitmaps. As a result the images can be cleanly scaled to any size without losing fidelity.) there is nothing better than Adobe Illustrator or Corel Draw.
Once you are done with creating your custom icons, save them in PNG format and rename them to the exact name of the stock PNG that you are substituting.
:good: It is always advisable to keep your PNGs the same dimensions as the ones you are replacing. Try not to over-do them. I am sure you wouldn't want a 500 kB PNG file
Once you are through creating icons for the xhdpi folder - just copy them all and paste inside the other folders - hdpi, mdpi. Take care that you don't forget to re-size them!
hdpi ~ 75% xhdpi
mdpi ~ 66% hdpi
Now time to edit other elements. We first start with the dialer background. So where exactly is the image for this?
:good: Dialer Background can be found at /res/drawable-nodpi/
The image we want to edit is background_dial_holo_dark.png
This image is usually 512 X 512 px in dimension. In my experience, this works well if your image is a texture or a pattern (nothing better than a seamless texture). However, if your idea of a dialer image involves using distinct entities etc, you would like to keep your dimensions around the same ratio as the Galaxy Note screen resolution. Otherwise, you will find that the image actually gets stretched vertically once on the phone, and looks really bad.
Next comes the drawable-xhdpi folder. In almost all apk files, this is one folder that you don't want to miss with regards to graphical customization.
You will find loads of PNG images here - each of which can be modified as per your whims and fancies.
You could get started with a few prominent PNGs - ones which you come across or ones that you 'notice' more than the rest. I have tried to list a few that would be worth starting on -
contacts_widget_preview.png
dial_num_9_wht.png (and other digits)
ic_contact_picture_180_holo_dark.png (and the other 'light' counterpart)
:good: Have a look at the other drawable folders. Experimenting is the only way you can know what changes what
You can follow the same procedure to customize images inside the Mms.apk, Phone.apk or any other apk for that matter! All you need to do is open the apk file as you would any archive, look for the drawable and mipmap folders under /res
Here I would like to discuss a bit about 2 important apk files -
Settings.apk and SystemUI.apk
These 2 apk files contain the bulk of images that we look to customize. And hence the special mention. The methods remain the same. We look for the same folders as discussed previously. I would just be helping to speed-up things and tell you which image appears where.
SETTINGS.APK
As before, we look for the drawable and the mipmap folders.The mipmap folders will contain the apk icon that represents the module. It is named as ic_launcher_settings.png
Start with the mipmap-xhdpi folder and simply duplicate your custom image into the other mipmap folders. DO NOT FORGET to re-size and rename.
Next we come to the all-important drawable-xhdpi folder, which again contains the bulk of the images we would like to customize. You will find icons here that are find elsewhere too. So which one is which? Where does it appear on your device?
This being the Settings apk that you are editing, the images in the drawable-xhdpi folder appear when you are inside the System Settings menu. This is where we usually set our -
Wireless and Network Preferences (Wi-Fi, Bluetooth, Data Usage etc.)
[*]Interface Preferences (Launcher, Lock screen, Themes etc)
[*]Device Options (Sound, Display, Storage, Battery, Apps etc.)
Here is how the menu looks when customized using graphics from the Cobalt Theme. (Though this was achieved by explicitly applying the theme, the same can be done by replacing those files in the ROM itself)
The images usually have the prefix ic_settings before them, which should make it easy for you to identify which ones you want to edit.
...to be continued....
---
under const
toxicthunder said:
under const
Click to expand...
Click to collapse
patience.
Nice
Can be very useful, and sort of unique - visual instruction is the key. Can exactly help me with somehing I've tried to do. Great thread.:good:
And adding one step-by-step (with pics) example of re-doing graphics, preferably, contacts/dialer, would be even perfect
This is not a good guide mate...
Where do u decompile the apks so u dont break the .9.png or where do u warn people for them ?
You will create overloading systems with this guide.
When theming the only proper way is to decompile the apk and edit the images then compile the apk again.
I bet none of the apks u did like this can compile because they all have broken .9's.
The system can not find the borders of these images and will create drain.
I think you miss the point.
Before jumping to conclusions on whether this is a good guide or not, please read what I have written.
We are dealing with png files here and NOT 9pngs
PNG files can very well be simply dropped over to replace in the apk.
Most of the icons - toggles, backgrounds, status bar icons etc are ALL png files.
You can simply open the apk files and replace the PNGs you want,
As for the .9png files, though I havent even touched upon them (If you could read the 'to be continued'), you can edit the .9pngs this way too as long as it is limited to color overlays and not with changing the geometric vector dimensions.
Thanks for dropping by..
I am sure users will find your point and our subsequent discussion helpful
Robbie Hood said:
This is not a good guide mate...
Where do u decompile the apks so u dont break the .9.png or where do u warn people for them ?
You will create overloading systems with this guide.
When theming the only proper way is to decompile the apk and edit the images then compile the apk again.
I bet none of the apks u did like this can compile because they all have broken .9's.
The system can not find the borders of these images and will create drain.
Click to expand...
Click to collapse
Hmmm point. As of now above it has been discussed to modify the .png files. Hence not an issue.
Toxic u would want to put a cautionary note about modifying the .9.png files
@abhi aao ... all set up
toxicthunder said:
I think you miss the point.
Before jumping to conclusions on whether this is a good guide or not, please read what I have written.
We are dealing with png files here and NOT 9pngs
PNG files can very well be simply dropped over to replace in the apk.
Most of the icons - toggles, backgrounds, status bar icons etc are ALL png files.
You can simply open the apk files and replace the PNGs you want,
As for the .9png files, though I havent even touched upon them (If you could read the 'to be continued'), you can edit the .9pngs this way too as long as it is limited to color overlays and not with changing the geometric vector dimensions.
Thanks for dropping by..
I am sure users will find your point and our subsequent discussion helpful
Click to expand...
Click to collapse
your guide states modifying .png and .9.png mate ....
remember what you write
We are simply working on image elements (PNGs, .9PNGs etc) which can be replaced without any fuss.
Click to expand...
Click to collapse
Robbie Hood said:
your guide states modifying .png and .9.png mate ....
remember what you write
Click to expand...
Click to collapse
yes, you are correct.
But where does it say "How to modify .9pngs"
as I said - under construction
Oh god no time toplay silly kids games.
Justput up a warning if u even know what the .9s exactly are.
If a guide is under construction leave it on ur pc and drop it when its finished.
U can really mess up peoples phones
.9pngs?
Sorry, not much know-how about graphic designing.
Give it a rest guys
Robbie - Toxic is a web designer and that too of an elite class...so he knows what he is doing!! Though your point is valid and well taken ! :good:
Toxic - No harm in putting up a cautionary note as i stated earlier.....many people here you know will mess things up and then flood the Q&A and this thread. So prevention is better than cure
removed reference to .9s under disclaimer.
Thanks Robbie
toxicthunder said:
.9pngs?
Sorry, not much know-how about graphic designing.
Click to expand...
Click to collapse
http://developer.android.com/tools/help/draw9patch.html here you go mate
---------- Post added at 12:50 PM ---------- Previous post was at 12:50 PM ----------
abhisahara said:
.many people here you know will mess things up and then flood the Q&A and this thread. So prevention is better than cure
Click to expand...
Click to collapse
you are a wise man
toxicthunder said:
patience.
Click to expand...
Click to collapse
Oh how cool!!! i didn't have to PM or ask you about this, you already created a Thread, this is really helpful for us newbies how want to learn mean while ill keep playing with the building from source part of the custom Rom, thanks toxic!!!
Since xda-university is going to be launched soon, advancing this thread is pointless.
Thread Closed
The Ultimate Guide
Preliminary Requirements:-
PC with Windows(Please avoid Windows Vista)
Java JRE or JDK
APK Multitool
framework-res.apk, SystemUI.apk, twframework-res.apk, com.htc.resources for installing
7-zip
Notepad++
Android Device for testing
Photoshop or equivalent image editing software
android-sdk(for 9 png editing)
Lots and lots of patience and mind
What this guide includes:-
Main Part:
1. Easiest Decompiling and Recompiling Guide *Must Read before continuing*
Theming Part:
2. APK png resources(General Location of General pngs)
3. Explanation of 9 pngs and how to edit or make them
4. How to Batch edit pngs (Not 9 pngs) (Changing color, etc)
All of us like if all things are present in one guide
This guide covers topics like decompiling, 9 png editing, theming in a very newbie friendly manner.
I have worked upon this guide to make it so that no problem arises during performing certain tasks which I faced.
I have covered workarounds such that they ensure LEAST no. of errors while performing these tasks.
However, if even then any problem arises, I am always there to help you out :laugh:
Main Part:
Decompiling: [MUST READ]
We are assuming that you have installed JAVA, Android SDK and apk-multitool without any problems
1. Copy your mobile's framework-res.apk, SystemUI.apk and twframework-res.apk in others folder in directory where you have extracted apk-multiool
2. Open Setup.bat. Choose 2 :- Installing Framework-res
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Setup.bat
Choose 1 (framework-res.apk)
Choose 2 (twframework-res.apk) [similarly install OEM specific files such as com.htc.resources , etc]
Choose 4 (SystemUI.apk)
Window will close each time you choose an option
You will have to restart Setup.bat each time
3. Now place the apk you want to edit in place-apk-here-for-modding
4. Now open script.bat. (If you see any error, either you haven't installed JAVA and SDK[adb] or they aren't implented, Please install them properly before continuing). Click any key to continue
APK-Multitool Window
5. You will see the above window. Now, make sure you have installed all frameworks and Compression level is set to 9.
6. Now, we will choose our project. Click 24. A list of files present in place-apk-here-for-modding will be in front of you. Choose any file
7. Click on 9. Now decompiling will be in process.
8. After it is complete, go to projects folder, you will see a folder with the name of apk you decompiled
Decompiled apk example
If it is decompiled properly, then there will be apktool.yml file in it
9. Do your modifications. Now, you can edit .9.png files (they will be discussed later) and xml files which were uneditable first
You will notice that there will be many new folders which weren't present in compiled form of apk. These all folders are generated from a file called resources.arsc present in compiled form which is absent in decompiled form
Such an example is of values folder which contains crucial xml files like styles.xml, strings.xml, ids.xml, etc
Always open xml files with Notepad++, it will mark commands and syntax making it look aligned and making it easy to understand
Example of decompiled xml file
Also, you can edit 9 patch files also which will be changed from now on
Example:-
We will discuss 9 png in detail later on
10. After you have done your modifications and you are ready to recompile the app, choose 11 (Compile System APK) if you are editing System App or 12(Compile Non-System App) if you are editing other than System App
11. a) If System App:-
After some time it will ask that if you want to copy additional files other than signatures to ensure less amount of errors, then choose y
After extracting some files, it will ask you to delete files from keep folder
Simply go to keep folder,
If you edited any pngs and there are many and you are lazy enough to delete one by one, then delete the whole folder in which you edited pngs
If you edited any xml file, then delete that xml file AND ALSO DELETE RESOURCES.ARSC
Why? Because we told that values and several other folders are generated from resources.arsc while decompiling
Now, if we don't delete resources.arsc, the modification we did in values folder will be reverted to original state
After doing this, go to script.bat again and press any key to continue
11. b)If its not system app:
Just recompile it and sign it man through the menu in apk multitool man.
It is easy as hell. Tutorial of non-system app has been ended here
12. Now, you will get another apk name System_ apkname.apk
Open both apks as archives by 7-zip
13. Last and most important step:-
Just drop the files you edited from new apk to old apk in correct folders. By now, you may have understood that resouces.arsc INCLUDES your edited xmls
14. Now, the final apk is not System_apkname.apk but apkname.apk (the original file you started with). Push it and enjoy
This is a work in progress.
Will add more things soon
Don't hesitate to ask any questions about anything
Credits:
@d3cka for teaching best about 9 pngs
@deathnotice01 for helping me
Miscellaneous Google and xda posts
Theming Part
General APK png Resources
Here I will tell you where to find some pngs to theme your Phone
Note: Here I will tell location of pngs but that may differ based on modification done to your ROM by OEMs or devs. These pngs are found after decompiling or extracting the apk files. For more reference, read this.
In this part, there is only brief information, but for a very good guide, please go here. I haven't covered it all up as d3cka himself has done a marvellous job in making that guide. All the things present in that guide should solve all your queries.
General location of apks:
SystemUI.apk - /system/app/
framework-res.apk - /system/framework/
twframework-res.apk - /system/framework
framework.jar - /system/framework/
lidroid-res.apk - /system/framework/
Click to expand...
Click to collapse
Variable list:
I have referred to some locations as drawable-xdpi. X here stands for
X: m, l, h, xh
Meaning pngs can be in drawable-mdpi, drawable-hdpi, drawable-ldpi, drawable-xhdpi depending on resolution of your phone
In some places, I have just added * in order to fill spaces that are not common in each png
[?] means maybe only for GB or Samsung
Click to expand...
Click to collapse
Battery Icons -
(i)Ice Cream Sandwich/Jelly Bean: SystemUI.apk/res/drawable-xdpi/stat_sys_battery**.png
(ii)Gingerbread: framework-res.apk/res/drawable-xdpi/stat_sys_battery**.png
Status Bar icons - SystemUI.apk/res/drawable-xdpi/
Note, some, however very few status bar icons are also present in framework-res.apk
Platlogo - framework-res.apk/res/drawable-nodpi/platlogo*.jpg
(image that pops up when repeatedly clicked on Android Version)
In Gingerbrad, its a single file but in ICS and JB, they are many images.
Default Wallpaper - framework-res/res/drawable-xdpi/default_wallpaper.jpg
Default Lockscreen Wallpaper[?] - framework-res.apk/res/drawable-xdpi/zzzzzzzz_default_lockscreenw.jpg
On stock based HTC roms, the default wallpaper location is specified in the.build.prop (so the dev can either swap out the image, or change the path)
The default wallpaper path for HTC roms is /system/customize/resource/wallpapers_a_00.jpg (Thanks to CNExus)
Spinners[GB] - framework-res.apk/res/drawable-xdpi/spinner_****_**.png
(The loading circles)
Menu Icons - framework-res.apk/res/drawable-xdpi/ic_menu_**.png
These icons may also be present in twframework-res.apk for Samsung Touchwiz ROMs
Notification Toggles
(i)With lidroid 15 toggles : lidroid-res.apk/res/drawable-xdpi/
(ii)Without lidroid mod : SystemUI.apk/res/drawable-xdpi
These were some general pngs of system apps that may be used to theme the phone. You can find respective pngs to theme in their apks.
Will add more soon...
9 PNG Discussion
These are special types of pngs that can be stretched to fit the need of program or different scenarios or cases. It contains 1 pixel lines on each border of different lengths for different things
As told above, we can't edit 9 png in compiled form as it will lose these lines which define its properties. So, we first need to decompile apk in order to edit 9 pngs
So, after decompiling apk, open 9 png in Photoshop and select the part inside that 1 px border and edit anything you want (Hue, Saturation, Bevel, Emboss, ANYTHING)
Now save it (save it as a normal png and then rename it as .9.png because photoshop doesn't recognise 9 png extension and image will loose its RGB format)
Explanation of 9 png:-
You can read this for more information
If you have doubt that you have gone wrong somewhere or you have made a new png from scratch and want to test if it is correct or not:
(Check all 9 png files you edit as they can cause Force Closes or bootloops)
Go to folder where you extracted android-sdk and go to tools folder and open draw9patch.bat
A window like this will open up:-
Drop you 9 png here
A new window will open with you 9 png on it
Tick on show bad patches
If you see red rectangles, you have a bad 9 patch image. You will need to delete or add those lines in png to remove all red boxes. If you want to delete, press Shift and start moving cursor over lines you want to delete. You can choose method of hit and trial to remove all rectangles and move the lower scale to see how your image size is adjusted
Or you can do what I do:
1. Remove all lines
2. Add single dot on top centre and left centre border of image (That can be taken as stretchable area)
3. Add lines on right and bottom of image where you want to fill content. Now, click on Show Content
The purple area you see in image is the content area (Text will be filled there. Eg:- Popup Menu)
4. Now, you can adjust these lines acoording to your need that what you want for stretchable area and content area until an unless there comes an red triangle
5. When it is done. Save the file. DONE
Easy, isn't it?
That's what theming is
Batch Editing pngs in Photoshop
Well the scenario is you have 200 pngs and you want to change their color, hue, add effect to them, etc. Definitely not worth the time you will spent doing this one by one. So, here, I will cover how to batch apply same edits on to your infinite pngs. Here, I am taking example of changing color of battery png from green to purple, you can apply any attribute to your image in the same way. I repeat it is not for .9.png files. Read above guide for reference
Let's start
1. First copy all your pngs you need to edit in a separate folder. I have made a folder named Battery Base and pasted my all pngs of battery there.
Now create another folder where your edited pngs will be saved. For eg:- Battery Done. (Don't create it inside Battery Base folder)
2. Open Adobe Photoshop and Choose Window>Actions or Alt+F9
3. Click on the note like file (Create new Action)
Rename it to anything you want . I have chosen Battery_color
Then click on Record. Now, you will see that red circle is enabled and now everything you do on image will be recorded and will be applied on each image.
4. Now, do this very carefully, don't miss any step.
We will do every thing that we want Photoshop to do with each file we want to edit.
a) So, first we want Photoshop to open the image. So , click on Open and choose any png from Battery Base folder (Choose a file with more color so that you know what color exactly your file will be after editing. That is why I chose 90 percent battery here).
b) Now, after opening, we want to change Color of png from green to purple. So, choose Image>Adjustment>Hue and Saturation or Ctrl+U
A dialog box with 3 sliders will appear. Move upper slider to change color. You can move other slider to change saturation and brightness if you want. Now, if you got it right, click on OK.
Every step of yours is being recorded, so don't do unnecessary stuff you don't want to do on other images. Nonetheless, if you have done it, then Drop down the Battery Base Action in action palette and you will see your every action there, If you want to delete any action , you can delete it from there. You can also add any action before pre completed action by clicking above that action and performing it.
Now, you can do anything you want to be done on your rest of pngs.
c) Now, we want Photoshop to save this png to carry on working on others. So, Go to File>Save as... and save it as a png in Battery Done folder. Photoshop will ask you to choose, so choose smallest compression and no interlace.
d) Image is saved but we also want Photoshop to close the png so that it does not open 200 tabs for editing 200 pngs. So, click on close (Small cross on title bar of png). If, it asks that do you want to save changes to png . Say no, because if you say yes, the png in Battery Base will be changes and when batch processing is done, that png in Battery Done will be of different color that all others.And also, your all green pngs in Battery Base folder will turn purple too. But we want purple images in Battery Done and green in Battery Base.
5. Now, we hae done what we want, so, we will stop recording the Action. Click on that square in Actions Palette.
6. Fun Starts. Now we will do the batch processing.
Go to File>Automate>Batch
In the dialog box, Choose the action to be Battery_Color (or obiviously any action you created)
Source folder: Battery Base
Destination Folder: Battery Done
Tick both Override Action 'Open' commands and Override Action 'Save as' commands
Click on OK. Sit back for 3 to 5 minutes(204 pngs) and TADA
You can apply any action in same way. Such as bevel, glossy, pale, etc to innumerous amount of pngs
Why APK-Multitool?
Yeah, why not just apktool or VTS (Virtuous Ten Studio)
But, when working with certain system apk files, there is a feature of APK Multitool that comes in very handy and that is, making a keep folder and asking you to delete stuff which you modded to then make an apk file. Certain files in apk do not need to be touched which can be easily controlled by APK Multitool.
Note: This is no way against VTS in any form
As I was making a guide which ensured least amount of errors, I chose APK Multitool, because we can easily fix those known errors od Status Bar disappearing or this and that :victory:
apktool is very minimalistic but not too user friendly for a newbie. And it may return with huge amount of errors if not used correctly.
So, APK Multitool is a perfect balance in between simplicity and work power
FAQ
Oops
Last One left
Awesome guide areeb..
Will include this guide in the index for sure
-asdf-
Will be a great guide for me
Sent from my GT-I9100 using Tapatalk 2
Great guide.
Good info. Nice work :good:
This is a good guide, very good one. But, I've found that the latest APK Multi Tool doesn't work for Android 4.2.2 apks.
Does this one work? Any solution?
krazzyvishal said:
This is a good guide, very good one. But, I've found that the latest APK Multi Tool doesn't work for Android 4.2.2 apks.
Does this one work? Any solution?
Click to expand...
Click to collapse
Thanks for notifying
You can try downloading this - http://d-h.st/cze and replacing the previous files with the new files in others folder
It's by Rizal Lovin from his guide here http://forum.xda-developers.com/showthread.php?t=2195680
Or you can notify the bug (if it's a bug ) here http://forum.xda-developers.com/showthread.php?t=1310151
Best theming guide i ever seen
i love ur ,9 pngs method and how u explained us more deeply about them
Thanks
krazzyvishal said:
This is a good guide, very good one. But, I've found that the latest APK Multi Tool doesn't work for Android 4.2.2 apks.
Does this one work? Any solution?
Click to expand...
Click to collapse
Try some of the suggestions in my guide. Link below.
From me to you.
great guide for starters
all hail to areeb
iamareebjamal said:
So, after decompiling apk, open 9 png in Photoshop and select the part inside that 1 px border and edit anything you want (Hue, Saturation, Bevel, Emboss, ANYTHING)
Click to expand...
Click to collapse
Here's what i do if i want to keep the .9.png border intact:
Open my .9.png.
Select>All.
Select>Modify>Border. Set width at 1 pixel.
Select>Inverse.
Edit>Cut.
Edit>Paste special>Paste in place.
Layer>Arrange>Send to back.
This splits the the border from the image allowing you to edit the image freely without affecting the 9patch.
I'll attach my action i created to automate the process.
Extract the action from the zip.
Window>Actions.
Select dropdown menu.
Load actions> select split.9.atn
One final thing. Photoshop has no problems with the .9.png extension. When you save your image (save for web) it will show as .png, just insert .9 into the name. I've never had a problem.:good:
Appreciate! Great guide
dully79 said:
Here's what i do if i want to keep the .9.png border intact:
Open my .9.png.
Select>All.
Select>Modify>Border. Set width at 1 pixel.
Select>Inverse.
Edit>Cut.
Edit>Paste special>Paste in place.
Layer>Arrange>Send to back.
This splits the the border from the image allowing you to edit the image freely without affecting the 9patch.
I'll attach my action i created to automate the process.
Extract the action from the zip.
Window>Actions.
Select dropdown menu.
Load actions> select split.9.atn
One final thing. Photoshop has no problems with the .9.png extension. When you save your image (save for web) it will show as .png, just insert .9 into the name. I've never had a problem.:good:
Click to expand...
Click to collapse
Thanks for suggestions
About last thing, I never said anything about Photoshop having problems with .9.png files
Maybe words appeared different from what they meant
iamareebjamal said:
Thanks for suggestions
About last thing, I never said anything about Photoshop having problems with .9.png files
Maybe words appeared different from what they meant
Click to expand...
Click to collapse
Sorry, my bad. I didn't mean it had problems. What I was trying to say is you can just add the .9 without any problems.
Normally I just copy the nines into a separate folder, work on them, then when saving double click and replace. Doesn't save much time with a handful, but when you have quite a lot it all adds up. Plus you still have the originals incase of an error.
dully79 said:
One final thing. Photoshop has no problems with the .9.png extension. When you save your image (save for web) it will show as .png, just insert .9 into the name. I've never had a problem.:good:
Click to expand...
Click to collapse
I think you're using a step or two more than you need to layer the border, and to save I just merge the layers, save and close.
XperienceD said:
I think you're using a step or two more than you need to layer the border, and to save I just merge the layers, save and close.
Click to expand...
Click to collapse
What steps are they? When it's automated using the action it takes less than a second.
Everyone has their own technique, personally I think merging layers and saving is redundant as they are merged when saved.