.9 Picture Files - EVO 4G Q&A, Help & Troubleshooting

I heard you had to edit these .9 pictures files a certain way (When building a rom) Does anyone have a tutorial handy? I'm using Adobe Photoshop but didn't want to risk screwing the whole thing up

I'm not an expert, but if you are just themeing an existing 9patch file, you can drop the file into GIMP or whatever and it should be fine. That is as long as the image was unzipped from a ROM and not decompiled. If it's decompiled things can get hairy in my experience. If you are decompiling apk's I would drop the 9patch files into the 9patch tool located in the /tools folder of the android SDK. This editor will allow you to fix the pixel border around the image.

I don't have a guide but the #1 thing to do is to decompile the APK that you're working with. I know that you can just rename the .apk to .zip and extract stuff, but that will not allow you to edit the .9 files properly.(edit: at least not in Photoshop)
After you decompile the APK, edit the files as normal with one exception. You'll notice that all of the .9 files have a 1 pixel sort of blank area with some parts being black and some being white; that's the actual resizing stuff part of the .9 files. Edit your files while keeping that 1px edge intact. When done and saved, recompile the .apk and the .9 files will be good to go.

Related

[Q] Binary XML edits....

Hi there,
I am trying to learn all this theming and have started with the basics, the notification bar icons in framework-res.apk.
I can pull it from the phone, I can decompile it but I am having a challenge putting it all back together as I changed the number of images in a specific animation and then edited the XML file regarding that, but I think there must be other references to the files as now there are less files and the error log is saying it can't find the ones I removed (both the png's and the references in the one xml file) when trying to recompile.
Is there a master XML listing all the files expected or something.
many thanks in advance
David P
Let me guess you are using apktool?
What you need to do is take a clean version of the apk you want to edit. For arguments sake let's say you are editing framework-res.apk.
Decompile using apktool and make your edits to .xml files ONLY. Once done recompile using,
apktool b -f [foldername] framework-res.apk
Now this recompiled apk will probably not work. However the xml files will be properly recompiled. So now you extract the edited .xml files, add them to a clean unedited framework-res.apk (not a de and re copmpiled one) without extracting the .apk. Just add and replace the files using WinRar or whatever.
Also add your edited images to necessary folder in the clean .apk too. So the end result is a clean framework-res.apk that you have updated with your edited .xml files and edited images. This apk should function just fine!!
Sorry if this is a big mess but it makes sense to me and it works for me.
Thanks for the suggestion. I am not quite sure what I am using, I have tried ThemePro for windows and APKManager, both of which are just scripted batch files so I would need to check what they use to extract or decompile with.
So Basically, I decompile, edit the xml (while textual) then recompile so the XML's are binary again. Then pull the BINARY XML#'s from the APK and use those with all the appropriate files and folders which I then create a new clean APK from by zipping it and renaming to .apk, correct?
David P
ephumuris said:
Let me guess you are using apktool?
What you need to do is take a clean version of the apk you want to edit. For arguments sake let's say you are editing framework-res.apk.
Decompile using apktool and make your edits to .xml files ONLY. Once done recompile using,
apktool b -f [foldername] framework-res.apk
Now this recompiled apk will probably not work. However the xml files will be properly recompiled. So now you extract the edited .xml files, add them to a clean unedited framework-res.apk (not a de and re copmpiled one) without extracting the .apk. Just add and replace the files using WinRar or whatever.
Also add your edited images to necessary folder in the clean .apk too. So the end result is a clean framework-res.apk that you have updated with your edited .xml files and edited images. This apk should function just fine!!
Sorry if this is a big mess but it makes sense to me and it works for me.
Click to expand...
Click to collapse
A lot of thanks!!! I'm looking for an explanation like this, all that I try give me an unusable framework-res.apk and now I know why.
ephumuris said:
Now this recompiled apk will probably not work.
Click to expand...
Click to collapse
Apktool creates "clean" apks as you name them. There is almost no difference between application built from sources or using apktool. And almost no logical difference between original apk and rebuilt one (for most apps, of course apktool doesn't support some of them).
If you are talking about system apps, then your problems are most probably related to incorrect way of installing resulting apk, not to it's structure. You can't reinstall system app easily and one of workarounds is to copy AndroidManifest.xml and META-INF from original file and push it to a device. Actually you did this using your method and I think this is the reason, why you think there is something wrong with apks built by apktool.

[Q] help with all apps fc after modifying images in framework-res

i decided to make my taskbar and tasktray transparent so i pulled framework-res from my phone, extracted and modified the images, and then made a flashable zip and reflashed it (i used the update-script from a theme i have that replaces the framework-res so i know it works). it flashes and boots fine and doesnt bootloop or anything but any app i open whether it be settings or gmail or root explorer force closes and theres no way to do anything but scroll on my home screen. the only thing that works is the usb connection type picker.
images i modified:
activity_title_bar.9.png
status_bar_background.png
status_bar_close_on.9.png
status_bar_header_background.9.png
status_bar_item_app_background_normal.9.png
status_bar_item_background_focus.9.png
status_bar_item_background_normal.9.png
status_bar_item_background_pressed.9.png
title_bar_portrait.9.png
i have a sneaking suspicion that its either the title_bar_portrait.9.png and/or the activity_title_bar.9.png
or just *.9.png files in general. all are rgb color and between 50% and 75% opacity if it matters
please help
edit- i took out the title_bar_portrait.9.png and the activity_title_bar.9.png and it works now so it was one or both of them. does anyone know why they broke everything and how to make it so they dont?
Id carry this over to the Q & A forum cause u gonna get told lol
Sent from my phone... I think using Tapatalk??
Patch9 files are not normal png files. You may have destroyed the .9 data by editing it. Also, take a clean copy of your original framework-res.apk off your phone and then using 7zip just open the file (don't unzip), and then drag and drop your modified images into the appropriate folders in the apk. Don't try and resign or make a new framework file.
nukedukem said:
Also, take a clean copy of your original framework-res.apk off your phone and then using 7zip just open the file (don't unzip), and then drag and drop your modified images into the appropriate folders in the apk. Don't try and resign or make a new framework file.
Click to expand...
Click to collapse
thats what i did when i broke it but i fixed it doing that too
nukedukem said:
Patch9 files are not normal png files. You may have destroyed the .9 data by editing it.
Click to expand...
Click to collapse
how can i modify them and restore the data? right now though i have the .9 images from above minus activity_title and title_bar modified and the system seems to be working like a charm. all i did was change the opacity in gimp aside from the background which i changed to a digi camo pattern
daktah said:
how can i modify them and restore the data? right now though i have the .9 images from above minus activity_title and title_bar modified and the system seems to be working like a charm. all i did was change the opacity in gimp aside from the background which i changed to a digi camo pattern
Click to expand...
Click to collapse
You could open the images with the 9patch tool in the sdk and double check them. Then save it using the tool.
Sent from your mom's phone.
i never noticed that before
so just open them with it and save them and i should be all good?
You could try just re-saving them. If that doesn't work, you can use the tool to check for problems. Maybe the easiest way to make sure everything is ok would be to open the original 9patch image and look at how the borders are drawn, then make sure you have the same borders in your image. I'm not an expert on 9patch files, but hopefully that will help you.

Need help making a theme

So I'm a bit of a noob. I'm attempting to create a theme and I cannot figure out where to edit the noti bar as well as the lockscreen image. For the lockscreen, I just want to keep the same tw lockscreen, but I want to change the padlock/background. Any help would be amazing as I am truely stumped.
If this needs to be in general, please move me
The file(s) that you are looking for are located in the framework-res.apk package located in a ROM/Theme. Inside of the .apk is a folder called res, and inside it is a folder called drawable-hdpi. This folder contains the majority of images used to make a theme look a certain way. In order to change the status bar, you need to edit the file statusbar_background.png. The lock screen one is in this folder too.
Nice. Thank you sir
Sent from my SPH-D700 using XDA App
I figured since the question has been answered I could just hijack this thread instead of making a new one. I am pretty new on modifying Android ROMs and would like to know where I should start first if I wanted to create my own theme? I would like to do some simple modifications first like icons and colors. Where can I find the necessary materials to get started? Like a fresh Touchwiz 2.5 template from the epic? Or do I just extract them from the stock ROM, if so, how? Thanks.
The files are accessible from the ROM if you open the zip and go to /system/framework then extract framework-res.apk
From there, you can open the apk with a tool like WinRAR and navigate to /res/drawable-hdpi as thomasskull666 mentioned. You can extract the png files from there and then just drag them back in once modified. Then just drag the framework-res.apk back into the ROM zip and flash it and bask in the glory of your handiwork.
Best advice is organize your workspace. You will have so many folders in folders your head is going to spin! What I do is copy the framework-res.apk, twframework-res.apk into a folder on your PC called STOCK DI18 Theme. *Make sure you pull these files from a deodexed rom or you'll have issues! Drawable-hdpi folder inside of both framework-res.apk files is where the brunt of you mods will be. If you are feeling daring, after changing the images in there you can begin to pull the drawable-hdpi from apps as well as long as you drag out the drawable folder, make your edits, then drag the edited folder right back in the zip, you'll be fine. Don't touch .9.png files if you don't know how to program them, I'm guessing you don't. Don't worry, edit everything else first to get that "feel" for what you are getting into. From there then research the .9.png files.
I highly recommend using 7zip for all of this, it is less of a headache. This is the basics of what you'll be doing to everything. Lets say you were going to do all this right off of your desktop. Make a folder on your desktop called STOCK DI18 Theme. Copy your framework-res.apk and twframework-res.apk into that folder from your deodexed rom. ANY TIME YOU NEED TO TAKE THESE FILES TO EDIT FOR YOUR THEME, COPY THEM FROM THIS FOLDER, NEVER SAVE THE CHANGES BACK INTO THIS FOLDER. This is important because you want easy access to all your stock files. Copy your system/framework and system/apps in here.
Now if you want to work on the framework-res.apk first. copy it to the desktop. Right click and choose 7zip-open archive. You can see the file structure of the apk. Click twice on res and you will see all the folders including drawable, drawable-hdpi, etc. Drag and drop drawable-hdpi to your desktop. Edit anything you want in there except a .9.png. Save the files into that same folder. Then drag and drop the folder right back into the archive where you got it in the first place. Then say your all done. Drag framework-res.apk back into the zip your going to flash on your phone in the same method.
Another quick tip, if you don't have an update zip and you have no idea what you are doing, download any working theme from here. Grab one of mine, and copy your framework-res.apk, twframework-res.apk, apps, etc over what in there. Make sure not to leave nothing it will show up in your theme! Any thing you need clearing up on, PM me, this should be plenty to get you started. To theme an app, right click say alarmclock.apk choose 7zip-open archive and do your magic again. As long as you only change the pictures in there you won't alter the signature on them so don't be afraid to mess with it.
Lastly, the Epic's framework is LOADED with files that it doesn't even use so be careful you not spending too much time editing a file you never seen on your phone before!
dreamsforgotten said:
Lastly, the Epic's framework is LOADED with files that it doesn't even use so be careful you not spending too much time editing a file you never seen on your phone before!
Click to expand...
Click to collapse
Excellent tip, this is especially helpful if you are trying to port a theme as not all of the .png's will match up. Make sure you know what you NEED to be replacing as opposed to what is optional. Also I don't know if it was mentioned before but there are some files (especially in twframework-res) that have a .9 before the .png. These are not your run-of-the-mill png files, and they need to be specially edited to preserve their formatting. I recommend avoiding these if at all possible, but there is a way to edit them if you are feeling really adventurous. Here is the link to that post:
http://forum.xda-developers.com/showthread.php?p=5206698
My suggestions for success: If you really want to make sure you are editing only the files that you need to edit in framework-res.apk, download a few custom themes or ROMs and extract the framework-res.apk from them. Then use a program such as UltraCompare to compare the files and folders inside each to find common files. This will help you pinpoint exactly what needs to be edited and what needs to be left alone. Lastly, like dreamsforgotten stated, be sure to have a good work directory from which to edit these .apks, as you will be working with folder after folder after folder. Organization is key, and patience is required

Draw9Patch help

Draw9Patch is my worst enemy. It's the only thing keeping me from releasing my theme.
I'm doing this to each image. (see image)
http://i642.photobucket.com/albums/uu150/Deflectant/Draw9patcherror.png
That's what I'm supposed to do right? I took ALL of the .9 images from drawable-hdpi in framework-res.apk, removed the .9 from each of them, then did what I have in the picture to each of them, saved them as normal png files (Draw9patch automatically adds the extention .9), packed them back into framework-res.apk, then tried flashing my theme and the same errors still stick out.
This thread goes into more detail with the issues I'm having. It's 100% corrupt .9 pngs but I just need to know how to fix them!!!!
http://forum.xda-developers.com/showthread.php?t=1065937
EDIT: Figured it out.
For the record, when you figure it out you should post for others knowledge... but it sounds like you were placing uncompiled patch9s directly into the apk with 7zip. After the drawpatch9 step you either need to recompile it with the apk or compile it seperately with xultimate9 and put it into the already compiled apk using 7zip...
Sent from my SPH-D700 using XDA App

[Tutorial] Lazy Mans Guide to Themeing

The lazy man’s guide to theming​.
I get requests all the time to make simple changes to my themes that anyone with a computer can do. So I put together this quick guide on how to theme the easy way. This is how I do most of my themes minus any xml edits or battery mods. This guide is for changing images only without having to decompile and recompile the entire apk file with apktool or apk manager. Great for when you just want to make a few changes to your existing setup.
What you will need.
~ 7zip use Google search it’s easy to find
~ image editor Gimp is great and free you can Google it also. I use Fireworks and Photoshop depending on what I am trying to do.
~ Draw9Suite. Created by tommytomatoe/kakomalo Thread found here http://forum.xda-developers.com/showthread.php?t=1272513
Download here: http://www.4shared.com/zip/TaDGMjde/9patchPngSuite.html
Unzip and place contents in folder, I have mine on my desktop.
~ An existing rom or theme to modify.
With just these tools you can do a lot.
Once you have 7zip and 9patchPngSuite on your system you will need to download the rom, or already existing theme for the rom you are on so you can make the changes you want to it.
Download the rom/theme you want to make changes to and use 7zip to unpack the rom/theme you downloaded, do this by right clicking on the zip file and chose open with 7zip. Inside you will find lots of folders, the ones you are looking for will be in system/app (for apps) or system/framework (for framework files). Extract the apk’s by just dragging them out of the 7zip window, to a folder on your desktop.
Inside the folder you extracted the apk’s to create a folder for each apk’s you extracted. Now you will want to extract the folder drawable-hdpi from the res folder of each apk to its associated folder, do this with 7zip also the same way you extracted the apk file. Once the drawable-hdpi folders are extracted you will see the images inside that you can modify.
At this point I create another folder inside each of the specific apk folders and name it .9 images and I copy and paste all the .9 images I want to change into that folder (these are for reference). I then copy all of those images into the compiled folder of 9patchPngSuite. And chose option 1 to decompile them. Now look in the decompiled folder and you can now take those images and change anything inside the black lines and dots you will see on the outside edge. If you feel like it you can also create your own .9 file with your own image by choosing option 2, this will open up draw9patch. Maser&Slave made a great tutorial on this so I won’t go into it. Edit your images, but be careful if the image displays words on it (like with popup_center_dark.9 )and it has a dark background it should remain dark so the word will still be readable, and vice versa if the image has a light background it most likely will have a dark font displayed on it that will be difficult to read if you make the image a dark color. Once all your images are edited use option 3 to recompile them, now in the output folder you will find your recompiled images that you can put back into your drawable-hdpi folder. Edit any other images you want just be careful with the pixel size if an image is 70X70 and you make it 140X140 it could cause some problems, some you can change others you can’t, it’s a lot of trial and error. Once all edits are finished put them all back in the drawable-hdpi folder you extracted from the apk, use 7zip to open the apk again, navigate to the res folder and delete the existing drawable-hdpi folder and drop the one you made the changes to into it, use the back arrow in the 7zip window and it will zip it back up and you can push the apk or flash it to test if your images came out the way you wanted them to. This will work with any image you chose to edit. You can also use this method add images from other themes you like to modify your theme to the way you want it. Just copy and paste the images you want to change into the drawabel-hdpi folder of the theme you are creating.
Brief list of what each apk controls, I am still new to ICS so if anyone knows more info please post.
Framework-res.apk
This will contain most of the images you will want to make changes to. Including check boxes, popup windows, menus, tabs, general status bar images, some lockscreen clocks, and a lot more. You will recognize them as you scroll through them. Some are hard to recognize like activity_tite_bar.9 and dark_header.9 because they are small, it will take some practice and trial and error to get the look you want.
Twframework-res.apk
This contains very little in ICS it still controls the tab backgrounds for a lot of apps but that is all I have found so far.
Systemui.apk
This apk contains most of the files for your dropdown and status bar, like signal bars, 3g 4g icons, wifi strength icons ,dropdown background and more. in ICS it also contains the battery images.
Ik95-res.apk and lidroid-res.apk
These apks contain the toggle images and background In the dropdown i.e. wifi toggle, airplane mode toggle etc. for the 14 ad 15 toggle mods.
Here is a standard flashable zip file you can put your modified apk files in and flash with CWM, open with 7zip and put your apk file in the corresponding folder in the flashable zip if you pulled it from framework put it back in the system/framework folder, if you pulled it from app put it in system/app folder in the flashable zip. Then flash like any other theme.
Flashable zip : http://www.4shared.com/zip/cmn3J1yd/My_flash.html
included below is a word doc of this tutorial.
future additions ....
Thanks for the guide, chief!

Categories

Resources