[Q] Framework-res.apk not working - Xperia Play Q&A, Help & Troubleshooting

So as I'm trying to figure out what's causing some bugs in the SEs music player I installed apktool to break the apk into readable java and text files.Since this is a system app i need the framework to decode it,and I pulled framework-res.apk from my system/framework directory and installed it in apktool,but it doesnt seem to apply to this app...Does anyone a file I can use?
The apps name is SemcMusic.apk

You could open the .apk in a .rar file . Its a pretty basic way though Idk if youll be able to access the file parts you need.

I guess it does work,but I just realized I have to find a peace of code in 20 folders and i have no knowledge of java...
Edit: It probably wont work that way since apktool translates binary xml to normal readable xml

Related

[Q] Guides for Theme'ing?

Let me first start off by saying I do not know much. So I am asking if anyone knows of some beginner guides to start creating my own theme's.
1) Is it basically scripting? Or will I have to write completely new code for all my functions... By the way, I fail at programming, so please inform me so I don't waste my time.
2) Would someone like me who does not know much scripting, have a hard time doing this or is it relatively quick to pick up?
3) Is it done on the phone or through the ADB Shell?
Thanks a bunch in advance.
It is done with photoshop and 7zip......all it is is replacinng drawable icons from the res folder
Sent from my ADR6300 using XDA App
jdkoreclipse said:
It is done with photoshop and 7zip......all it is is replacinng drawable icons from the res folder
Sent from my ADR6300 using XDA App
Click to expand...
Click to collapse
Thanks for the quick reply, do you have any possible examples to show me how to do this?
You going to do your editing on the computer. I believe the command is
Code:
adb remount
adb pull framework-res.apk /Desktop/Theme
/Desktop/Theme is a directory you create on your computer. If adb pull doesn't work just download what ever rom your using to your computer and copy and paste framework-res.apk out of /system/framework.
Afterwards you can use 7zip to find the files you wish to edit. Its been a while for me but i believe most files are located in drawable-hdpi. Use Gimp or Photoshop to edit whatever images you want to. Do not edit any images with file extensions .9pngs as they require some additional steps, and can cause issues when you try and put it back on your phone.
Once your done move the files to the tools directory of sdk. cd to that directory and run..
Code:
adb remount
adb push framework-res.apk /system/framework
adb reboot
That should work for personal reasons. If your looking to create an update.zip to release for others i can help you with that too.
tcberg2010 said:
You going to do your editing on the computer. I believe the command is
Code:
adb remount
adb pull framework-res.apk /Desktop/Theme
/Desktop/Theme is a directory you create on your computer. If adb pull doesn't work just download what ever rom your using to your computer and copy and paste framework-res.apk out of /system/framework.
Afterwards you can use 7zip to find the files you wish to edit. Its been a while for me but i believe most files are located in drawable-hdpi. Use Gimp or Photoshop to edit whatever images you want to. Do not edit any images with file extensions .9pngs as they require some additional steps, and can cause issues when you try and put it back on your phone.
Once your done move the files to the tools directory of sdk. cd to that directory and run..
Code:
adb remount
adb push framework-res.apk /system/framework
adb reboot
That should work for personal reasons. If your looking to create an update.zip to release for others i can help you with that too.
Click to expand...
Click to collapse
Excellent, thank you, I will give it a shot!
tcberg2010 said:
You going to do your editing on the computer. I believe the command is
Code:
adb remount
adb pull framework-res.apk /Desktop/Theme
/Desktop/Theme is a directory you create on your computer. If adb pull doesn't work just download what ever rom your using to your computer and copy and paste framework-res.apk out of /system/framework.
Afterwards you can use 7zip to find the files you wish to edit. Its been a while for me but i believe most files are located in drawable-hdpi. Use Gimp or Photoshop to edit whatever images you want to. Do not edit any images with file extensions .9pngs as they require some additional steps, and can cause issues when you try and put it back on your phone.
Once your done move the files to the tools directory of sdk. cd to that directory and run..
Code:
adb remount
adb push framework-res.apk /system/framework
adb reboot
That should work for personal reasons. If your looking to create an update.zip to release for others i can help you with that too.
Click to expand...
Click to collapse
Just noticed you are an expectant father, congratulations. I have a 6 month old, who is a ton of fun!
Ok, so I went through 'astro' found the file framework-res.apk inside of /system/framework as you stated above, the only problem is from adb shell, whenever I run pull, it gives me the following message:
Code:
'remote object 'framework-res.apk' does not exist'
I have debugging turned on, so I should have access, and adb mounted just fine...
If you have any ideas, I would appreciate it.
bboydp said:
Just noticed you are an expectant father, congratulations. I have a 6 month old, who is a ton of fun!
Ok, so I went through 'astro' found the file framework-res.apk inside of /system/framework as you stated above, the only problem is from adb shell, whenever I run pull, it gives me the following message:
Code:
'remote object 'framework-res.apk' does not exist'
I have debugging turned on, so I should have access, and adb mounted just fine...
If you have any ideas, I would appreciate it.
Click to expand...
Click to collapse
try mounting the partitions through Clockword Recovery. I've had issues in the past where a partition wasn't mounted, therefore the computer couldn't find it.
Hope it works, i'm looking to start theming some as well and this looks like it'll help!
Thank you. I don't think u need to be in adb shell. Try using astro to copy and paste that framework-res.apk to ur sdcard. Then just disk drive ur card and remove it.
Sent from my ADR6300 using XDA App
MMBosstones86 said:
try mounting the partitions through Clockword Recovery. I've had issues in the past where a partition wasn't mounted, therefore the computer couldn't find it.
Hope it works, i'm looking to start theming some as well and this looks like it'll help!
Click to expand...
Click to collapse
Thank you, I will keep that in mind.
tcberg2010 said:
Thank you. I don't think u need to be in adb shell. Try using astro to copy and paste that framework-res.apk to ur sdcard. Then just disk drive ur card and remove it.
Sent from my ADR6300 using XDA App
Click to expand...
Click to collapse
Lol, that works easily... thanks!
ok so i've used 7zip to pull the images from the drawable icons folder out of the framework res what's the simplest way to say add transparency to my notification window would I use Photoshop for this?
Also interested in a guide for this.
Sent from my ADR6300 using XDA App
HeyItsLou said:
ok so i've used 7zip to pull the images from the drawable icons folder out of the framework res what's the simplest way to say add transparency to my notification window would I use Photoshop for this?
Click to expand...
Click to collapse
Yes with photoshop you manipulate the image's transparency using a ton of different tools but the easiest being the blend tool by simply double clicking on the image in the layers pallet
EDIT* Hopefully that makes sense lol
jdkoreclipse said:
It is done with photoshop and 7zip......all it is is replacinng drawable icons from the res folder
Sent from my ADR6300 using XDA App
Click to expand...
Click to collapse
dont forget xml files, for fully rounded theme you will have to modify some of these!
So you want to know how to theme heh. Cool, we need more themers!
Here is a guide to get you started:
The Ultimate Android Themeing Guide
Can't afford Photoshop? No problem, download Gimp, its free and will work great for themeing.
Download for Gimp
Dont know how to do something with your theme? Google to the rescue. For example; say you want to add a transparency to your image. Just google "how to add transparency with Gimp". Google can answer all your questions.
Couple things to keep in mind while themeing.
1: Dont change the size of the default image
2: Some images are 8-bit paletted. You are really limited on what you can do in 8-bit. While in your graphics program change the image to 24bit rgb or 32bit cmyk, do your edits then change the image back to 8-bit when you are done.
Instead of using adb to pull the apk's I want to edit I just extract them from the ROM itself. If you download your ROMS from ROM Manager they can be found on your SD card in the clockworkmod/download folder. For example Skyraider can be found in clockworkmod/download/pcjock.com/skyraider/Roms folder.
Inside the rom zip file you will see a folder structure similar to data/meta-inf/system/tools etc. There are 2 main apk's you are looking for:
framework-res.apk - this is the main "theme" area for droid devices
com.htc.resources.apk - this is the main "theme" area for sense based roms
Both of these can be found in the system/framework folder within the zip of the ROM. Editing these 2 apk's will theme about 80% of your overall look of the phone. The other 20% use their own png's found within the apk of that particular app. These apps can be found in system/app of the ROMS zip file.
What I do when editing a apk is extract the apk to my desktop. After I have the apk I want to edit there I open it up with 7zip and extract the whole res folder to my desktop (keep the apk open in 7zip so you can add the res folder back in after your edits). All the pngs you want to edit will be in the drawable folders (ie drawable, drawable-hdi, etc)
Pay close attention to the png files you edit. If it has a .9 in its name you need to take some extra steps when editing the file. A guide on editing .9 pngs can be found here. After you have made your png edits drag the res folder from your desktop back into the apk in 7zip. After that you need to create a update.zip file with your new theme in it. I use apk sign which can be found here. Thats it, your theme should be ready to go.
I hope this helps some. When in doubt do what I did, research, google, research and google some more.
Good luck!
djkms said:
So you want to know how to theme heh. Cool, we need more themers!
Here is a guide to get you started:
The Ultimate Android Themeing Guide
Can't afford Photoshop? No problem, download Gimp, its free and will work great for themeing.
Download for Gimp
Dont know how to do something with your theme? Google to the rescue. For example; say you want to add a transparency to your image. Just google "how to add transparency with Gimp". Google can answer all your questions.
Couple things to keep in mind while themeing.
1: Dont change the size of the default image
2: Some images are 8-bit paletted. You are really limited on what you can do in 8-bit. While in your graphics program change the image to 24bit rgb or 32bit cmyk, do your edits then change the image back to 8-bit when you are done.
Instead of using adb to pull the apk's I want to edit I just extract them from the ROM itself. If you download your ROMS from ROM Manager they can be found on your SD card in the clockworkmod/download folder. For example Skyraider can be found in clockworkmod/download/pcjock.com/skyraider/Roms folder.
Inside the rom zip file you will see a folder structure similar to data/meta-inf/system/tools etc. There are 2 main apk's you are looking for:
framework-res.apk - this is the main "theme" area for droid devices
com.htc.resources.apk - this is the main "theme" area for sense based roms
Both of these can be found in the system/framework folder within the zip of the ROM. Editing these 2 apk's will theme about 80% of your overall look of the phone. The other 20% use their own png's found within the apk of that particular app. These apps can be found in system/app of the ROMS zip file.
What I do when editing a apk is extract the apk to my desktop. After I have the apk I want to edit there I open it up with 7zip and extract the whole res folder to my desktop (keep the apk open in 7zip so you can add the res folder back in after your edits). All the pngs you want to edit will be in the drawable folders (ie drawable, drawable-hdi, etc)
Pay close attention to the png files you edit. If it has a .9 in its name you need to take some extra steps when editing the file. A guide on editing .9 pngs can be found here. After you have made your png edits drag the res folder from your desktop back into the apk in 7zip. After that you need to create a update.zip file with your new theme in it. I use apk sign which can be found here. Thats it, your theme should be ready to go.
I hope this helps some. When in doubt do what I did, research, google, research and google some more.
Good luck!
Click to expand...
Click to collapse
Thanks a lot for that post, exactly what I was looking for.
1 quick question, I was just trying to make a transparent background for my SmoothCalendar Widget, and I edited it in gimp fine, readded the png to the apk, moved the apk back to my sd card, but when I went to install it it just said "cannot install" from what I was reading, this is a signing issue -- is that where the apk sign program you linked comes into play?
scrdy said:
Thanks a lot for that post, exactly what I was looking for.
1 quick question, I was just trying to make a transparent background for my SmoothCalendar Widget, and I edited it in gimp fine, readded the png to the apk, moved the apk back to my sd card, but when I went to install it it just said "cannot install" from what I was reading, this is a signing issue -- is that where the apk sign program you linked comes into play?
Click to expand...
Click to collapse
That would be my guess. Attached is the program I use to sign single apk's (the one I linked earlier is a bit more involved and I use it for themes only).
With the one attached I would suggest using a public key, no need that I can see in using a private key (its more pain then its worth).
Also, I would suggest uninstalling the app before installing the one you themed, most will error out when installing (in my experience anyways).
There is a tutorial link in the zip file on how to sign your apk's. If you need some clarification let me know.
my problem (which is why I've never finished some of my themes) is that signing apk's never works for me
djkms said:
That would be my guess. Attached is the program I use to sign single apk's (the one I linked earlier is a bit more involved and I use it for themes only).
With the one attached I would suggest using a public key, no need that I can see in using a private key (its more pain then its worth).
Also, I would suggest uninstalling the app before installing the one you themed, most will error out when installing (in my experience anyways).
There is a tutorial link in the zip file on how to sign your apk's. If you need some clarification let me know.
Click to expand...
Click to collapse
I'll give that a go when I get home from work -- thanks for your help.
Excellent thread! I've been poking all around the place trying to find this info...

[Q] Do I have to theme using an update zip?

Noob to theme'ing.
Do I have to make an update zip to theme or can I modify the framework apk and just push that to /system/app?
You can just modify and push framework-res.apk to system/framework/
Sent from my ADR6300 using XDA App
Oddity said:
You can just modify and push framework-res.apk to system/framework/
Click to expand...
Click to collapse
system/framework/
sorry i've been at this computer too long lol
My replacement keeps giving me boot loops.
All I changed was: I duplicated the green lockslider and its components and renamed them to replace the other gray locksliders.
then I compressed the framework-res to a zip (using built in mac zip compression, mac user so i can't use winrar) and change zip to apk. adb push to system/framework/
any ideas what is going wrong?
cupcakera said:
My replacement keeps giving me boot loops.
All I changed was: I duplicated the green lockslider and its components and renamed them to replace the other gray locksliders.
then I compressed the framework-res to a zip (using built in mac zip compression, mac user so i can't use winrar) and change zip to apk. adb push to system/framework/
any ideas what is going wrong?
Click to expand...
Click to collapse
Have you tried installing it via a update.zip?
cupcakera said:
My replacement keeps giving me boot loops.
All I changed was: I duplicated the green lockslider and its components and renamed them to replace the other gray locksliders.
then I compressed the framework-res to a zip (using built in mac zip compression, mac user so i can't use winrar) and change zip to apk. adb push to system/framework/
any ideas what is going wrong?
Click to expand...
Click to collapse
Well this gets to be a bit confusing. I will say what i know hopefully others can help out too.
APKs are just zip containers that are signed, that means there is no compression. In your zip program look for a setting under compression labeled store. You would then have to sign that bad boy in order for your phone to work. You can not use the testsign certificate.
With that being said here is a guide...
Modifying?
PNG's -> open the apk up in the zip program, navigate to the res/whatever_folder_had_the_original and drop your files in.
9.PNGs and XML more complicated. You will have to decompile the apk [apktool] then modify them [look for articles on that, i cant get too indepth here]. Compile the apk. Drag the now compiled xml and 9.pngs to the respective folder open in your zip program.
Really the object is not to mess up the signing that comes with the apk. opening up the apk in a zip program, allows you to view, and replace files with not destroying the signature.
This method will not work with all applications. I have still not figured why some programs work with being signed with a testcert and others are not. I have a hunch that all userspace programs can be test signed and all system files need their own [htc?] key.
Also to note is that for some reason the phone when looking at framework-res, services.jar and others does not seem to mind the differences in CRC of the files stored in it, with what is in the manifest. I still can figure out the phones reasoning to allow this to happen on some but not all apps.
I hope this was not very confusing. I am working on video toturials of this same subject. Stay tuned!
That really helps a lot. Thanks.
I'll try that out tonight. Any recommendations for zip programs with a store feature for mac?
cupcakera said:
That really helps a lot. Thanks.
I'll try that out tonight. Any recommendations for zip programs with a store feature for mac?
Click to expand...
Click to collapse
I use BetterZip on my mac..........open the apk with Betterzip, then extract the res folder to your desktop (or wherever you want). Edit the .png files you want.......steer clear ( unless you know how) of editing the 9.png files. Delete the original res folder from the framework folder and insert the res folder you just edited. Then save the framework-res.apk and push back to where it belongs.
I like 7zip better, but this works okay, since there is no 7zip for a mac.
Betterzip worked perfectly! Thanks again.

[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] Stock MMS app

I installed the stock MMS.apk file on my de'odexed stock rom (rooted of course). Everything worked well and the app runs, but when reading text threads there is an ugly white border around the edge of the screen, its strange. Its not present when viewing the list of conversations, only in the thread view. I'm not sure if that's how its supposed to look or not, but if not, anyone have any idea how to fix this?
I'll get a screenshot up as soon as I get home.
I first obtained the MMS.apk from the cyanogen rom, then thinking that it might be modified and thus creating my problem, I grabbed the AOSP version from this thread:
http://forum.xda-developers.com/showthread.php?t=789493
Any help will be greatly appreciated.
UPDATE:
Found another thread where people are experiencing the same issue, apparently its a problem with how sense handles the application:
http://forum.xda-developers.com/showthread.php?t=752604
I attempted to open up the Mms.apk (AOSP version) with APKtool and play around with the xml files for the UI, but wasn't able to get it to recompile and test any changes I made, the app would just crash on launch. I simply made a few changes to the colors, but I admittedly don't really know what I'm doing and it wouldn't run. If anyone who's more experienced in this area could offer some advice I'll try again.
That's a picture of the issue, it appears in both landscape and portrait mode.
Texts were blacked out just for privacy sake.
Well after a few hours of messing around in the XML files for the AOSP messaging app, I was able to find a solution to this issue. I modified the XML file to have it correctly display the black color background when using the black theme. I was not able to eliminate the border entirely, but by changing the scrollbar type from Inset to Overlay I was able to make it uniform and far more visually pleasing.
I have attached my modified Mms.apk file, feel free to test it out.
For the specifics of what I did for those who are interested:
Two files were modified in the apk
- /res/layout/compose_message_activity.xml
- /res/layout/compose_message_activity_black.xml
In both files I changed the scrollbarStyle propery to "insideOverlay", in addition to removing the reference to always show the scrollbar track.
In the black xml file I changed the background color to "@android:color/black".
The original XML files were extracted using APKTool and Recompiled to their binary format, then reinserted into the original apk without resigning.
This is awesome! ... Except it doesn't filter out the VVM message streams that come through. :|
I haven't encountered this problem though I use google voice so I'm not really sure what it is you're referring to.
Sent from my PC36100 using XDA App
ty!
beautiful ty!!!!!!!!!
Imma cry
I cant send mms!
Try turning off wifi while sending/receiving mms
no wifi
i don't have wifi on when i do this i just have 3g on so i can send mms!
i zipped the file with the one that had the white outline .is there a way to make this new apk. file into a .zip file for me ?
I'd imagine you could simply replace the APK file in your zip with my modified one and install that way. Use a program like winrar or 7zip to replace the apk within the zip.
tehpsyc said:
I'd imagine you could simply replace the APK file in your zip with my modified one and install that way. Use a program like winrar or 7zip to replace the apk within the zip.
Click to expand...
Click to collapse
sorry but i cant find either of thoses programs u mention to replace the APK file in my zip with your modified version .is there another program or a manual way of doing this process ?
how do i install this? since it's an APK, i thought i'd just install it from Astro but it says it's already installed and asked if i wanted to uninstall.
To install this you need to either delete or rename the Mms.apk that's already on your phone in the /system/app directory (I just rename to Mms.apk.bak) and then copy the modified one into that same directory followed by a restart of the phone. Because its a system app you cant install it the same way you would a regular apk, at least from my understanding.
You will need to get write access to the system directory to accomplish this (I used an app on the market called root explorer, though you can also do all this through the ADB shell)

[Q] need help with theme

my first attempt into creating a new theme it's just a swype keyboard however i get fc when i try to open it. i am on starburst 1.95 i wipe after applying before launching. i modded png files compressed them originally i thought the apk being 6 megs was my issue but i have the same issue after compressing them. I didn't know if the apk needed to be resigned so i first tried without signing then with signing with the same result. can someone help me find what i screwed up.
didn't download your file to look but did you change any .9.png's ?
if all you changed were png's the .9.are probably causing your problems.
try this.
if just changing normal pngs just unzip the .apk (its a zip file) edit your png files and zip it back up.
see if that works.
once you get that going there are quite a few good tutorials out there on modding .9 files.
they take a few extra steps.
they are all .png
i have noticed swype themes for other phones don't completely work or they don't swype at least, but they do work for standard typing. my failed theme however just force closes so i am thinking this is a different issue not necessarily compatibility. the swype i modded was pulled from starburst, my current rom.
their is a com.swypeinputmethod file under data/data i am not sure if or how this effects the swupe.apk in system/app. thanks for the reply
try replacing the png files without decompiling the .apk first
just rename .apk to .zip and extract to a folder then rezip and change back to .apk
or easier just open the zip without extracting and copy the files to thier spots and close.
this way you don't have to worry about all the decompiling and signing.
it works
i got it
since it is a no install system app i just put it into the rom and installed the rom, i also got a fresh apk to dump the png's into not sure what did it but it is now working and i can look for something else to theme, skin or play with.
thanks guys

Categories

Resources