Howto decompile XML in resource of APK? - G1 Android Development

Hey guys, I've learnt how to decompile most of the class files through dexdump.
For details check this out:
http://zeaster.blogspot.com/2007/11/how-to-decompile-dex-file-on-android_28.html
But say I wanted to decompile edit an XML file in folder \res\xml\appwidget_info.xml and resign/package an apk file. How would I go about doing that?
I've heard something about opening it up in a hex editor and this is what I get (screenshot). I'm most interested in viewing/editing the android:updatePeriodMillis value. This is in relation to the 1x4 Calendar Widget not updaating properly. Any pointers will be helpful and much appreciated.

how to do that ??

Rotundjere said:
how to do that ??
Click to expand...
Click to collapse
read the date of the post
slap yourself
read http://forum.xda-developers.com/showthread.php?t=640592
Brut.all's apktool will decode and rebuild apks and jars
you won't get java code out of it instead you will get smali code
if only want to mess with xml's strings it will let you do that

Too funny
Effdee said:
read the date of the post
slap yourself
read http://forum.xda-developers.com/showthread.php?t=640592
Brut.all's apktool will decode and rebuild apks and jars
you won't get java code out of it instead you will get smali code
if only want to mess with xml's strings it will let you do that
Click to expand...
Click to collapse
Subtle yet absolutely hilarious.
I know even my post comes late, searched for Brut.all's apktool and seen this thread, still worth noting the humour.

Related

[TOOL] Automated Smali and BakSmali

Everytime I used smali or baksmali, I always had to go to the XDA post that described the correct usage...so I made simple batch files to speed up the process and figured I should share with the community.
Extract the .zip below, run the "smali.bat" or "baksmali.bat" batch files, and follow the instructions...they should be self explanatory.
This is obviously for Windows...don't ask for other versions, I'm not a programmer. These are the latest smali and baksmali versions (v1.2.6 released 12/23/2010) as well.
AutoSmali v1.0 | Download​
(Hope this post is in the right forum?)
Any chance this will work with framework-res.apk? I've been using apktool for it but dread having to build it twenty times before getting a usable one.
xHausx said:
Any chance this will work with framework-res.apk? I've been using apktool for it but dread having to build it twenty times before getting a usable one.
Click to expand...
Click to collapse
not sure what you mean?...this is just an automated script for decompiling/compiling the .dex files (usually within .jar files)
what exactly are looking to do with an .apk? sign it?
this is pretty cool ... thanks
Hey!
Thanks for this! Really helps alot!
But can you make it compatible with v1.2.7? http://code.google.com/p/smali/downloads/list
Thanks!
xHausx said:
Any chance this will work with framework-res.apk? I've been using apktool for it but dread having to build it twenty times before getting a usable one.
Click to expand...
Click to collapse
hmmm...weird, i had the same issue , then i found the correct cobination of framework files for aptool, that now it builds as easy as one two three.
Did you makes sure you used the original meta-inf folder from the original apk, pm me if you ever need help.
Nice work. .:thumbs up:.
for this to work for the newer versions of smali/baksmali
just change .bat to .txt and edit the place where it says 'smali-1.2.x.jar' to the new version.
that should work.
i still dont know how the hell to do anything with a .smali file but i atleast know how to do that!
hit thanks if that helped
link down
schmittx said:
AutoSmali v1.0 | Download
Click to expand...
Click to collapse
dead link. try:
http://www.mediafire.com/?d5ruxexq15d1pje

Decompiler

Hello, I want to decompile my framework-res apk so I can possibly add a battery that displays percentages. Is there any program out that will let me do this?
Sent from my Xoom using XDA Premium App
Your looking for Smali/BakSmali.
No offense intended here, but the fact that you are asking tells me that you are going to need a lot of research in doing this. It's not necessarily decompiled into the most readable source code. But it's that way with most decompiling, and you probably realize that.
Also, since we don't have source code for HoneyComb, the current Smali/Baksmali implementation doesn't work well/at all for some files.
Good Luck.
Kcarpenter said:
Your looking for Smali/BakSmali.
No offense intended here, but the fact that you are asking tells me that you are going to need a lot of research in doing this. It's not necessarily decompiled into the most readable source code. But it's that way with most decompiling, and you probably realize that.
Also, since we don't have source code for HoneyComb, the current Smali/Baksmali implementation doesn't work well/at all for some files.
Good Luck.
Click to expand...
Click to collapse
No offense taken. I am in the process of teaching myself these things so Google and xda are my best friends. Thanks for the reply
Sent from my Xoom using XDA Premium App
Kcarpenter said:
Your looking for Smali/BakSmali.
No offense intended here, but the fact that you are asking tells me that you are going to need a lot of research in doing this. It's not necessarily decompiled into the most readable source code. But it's that way with most decompiling, and you probably realize that.
Also, since we don't have source code for HoneyComb, the current Smali/Baksmali implementation doesn't work well/at all for some files.
Good Luck.
Click to expand...
Click to collapse
Is it possible to read the Stat sys battery XML? I've been reading on how to decompile the files but no real help with this really
Sent from my Xoom using XDA Premium App
I use apk_manager_4.9 it may be the woosie way but it works for me. Try this thread: http://forum.xda-developers.com/showthread.php?t=695701
zone23 said:
I use apk_manager_4.9 it may be the woosie way but it works for me. Try this thread: http://forum.xda-developers.com/showthread.php?t=695701
Click to expand...
Click to collapse
Thank you, I have previously viewed that thread. There aren't really any clear cut instructions on setting it up properly. Are you able to edit the XML files contained in the drawable folder? That is all I'm interested in. I can't seem to successfully decompile the framework-res apk. Thanks again
Sent from my Xoom using XDA Premium App
I will offer to help you out.
1. Install latest SDK from http://Developer.google.com & Eclipse.
2. Search for apktool and unzip files into the SDK folder under platform_a DB
3. Buddy fix apktool with attached files. You will need to rename these files to Apktool, etc..
4. Copy framework-res.apk, systemui.apk, settings.apk, and launcher2.apk from \system + copy the odex
5. Run apktool d framework-res.apk (do this for each apk)
6. Look in the Res/drawing folders for images to mod.
Now you have the .9.png files with marks & the decompiled XML for reference.
Use Photoshop to modify the files.
Use draw9patch to compile any .9.png files
This is really important. Use 7zip or any other zip app that allows you to open and view an apk as a zip without actually unzipping it. Just copy the new photo files in and add them to an update.zip (you can download this from XDA Xoom Development thread) or use a DB to push the updated files to the Xoom.
Theaming is a subject but that's the basics. I can't upload files for newapktools.zip right now but will edit this when I get home later. Alternativly, maybe someone can post the patched up Xoom compatible apktool files. They are also in XDA theaming thread if you search.
Hth
Sent from my Xoom using XDA Premium App
nbeebe24 said:
Thank you, I have previously viewed that thread. There aren't really any clear cut instructions on setting it up properly. Are you able to edit the XML files contained in the drawable folder? That is all I'm interested in. I can't seem to successfully decompile the framework-res apk. Thanks again
Sent from my Xoom using XDA Premium App
Click to expand...
Click to collapse
Yes I can you need Java JDK installed:
http://www.oracle.com/technetwork/java/javase/downloads/index.html
Eventually you will need Eclipse and I use Gimp because its free and doesn't break any .png files.
http://www.eclipse.org/downloads/
IDE for JAVA Develpoers search youtube for a video on how to set it up for android.
http://www.youtube.com/watch?v=ZoWVeXizfbo
I use Notepad++ to edit XML
http://notepad-plus-plus.org/download
Thank you very much for that! I edited the images I want to use, I waes just trying to add the respective values into the XML. Is it possible to add a battery with 1% increments as of now?
Sent from my Nexus S using XDA App
nbeebe24 said:
Thank you very much for that! I edited the images I want to use, I waes just trying to add the respective values into the XML. Is it possible to add a battery with 1% increments as of now?
Sent from my Nexus S using XDA App
Click to expand...
Click to collapse
I have no idea all I know is on the EVO you had to edit the services.jar for that and it is beyond my capabilities. Sorry.
zone23 said:
I have no idea all I know is on the EVO you had to edit the services.jar for that and it is beyond my capabilities. Sorry.
Click to expand...
Click to collapse
I'll pay money if someone can link me to the decompiled battery_stat_sys and battery_charge_sys XML's
Sent from my Nexus S using XDA App
Hey nbeebe24, check out my post over here: http://forum.xda-developers.com/showthread.php?t=1063657
This should help you decompile/recompile framework-res.apk for your mod. I look forward to seeing your results
nbeebe24 said:
I'll pay money if someone can link me to the decompiled battery_stat_sys and battery_charge_sys XML's
Sent from my Nexus S using XDA App
Click to expand...
Click to collapse
you tryed this tool
Code:
http://ragotnicolas.free.fr/Android/ax10mk.rar
http://ragotnicolas.free.fr/Android/ax10mk.rar
http://forum.xda-developers.com/showthread.php?t=928864

Decompiling ICS 3.32.401.5 APK's using apktool.jar (APKMnanager) update

I have been playing arround with the issue of not being able to decompile the apks from OS 3.32 roms.
The issue seems to be when decompiling the systemui.apk you are getting the following errors:
--------------------------------------------------------------------------
|04/03/2012 -- 23:59:11.09|
--------------------------------------------------------------------------
java version "1.7.0_03"
Java(TM) SE Runtime Environment (build 1.7.0_03-b05)
Java HotSpot(TM) Client VM (build 22.1-b02, mixed mode, sharing)
Could Not Find C:\APKManager\place-apk-here-for-modding\../place-apk-here-for-modding/signedSystemUI.apk
Could Not Find C:\APKManager\place-apk-here-for-modding\../place-apk-here-for-modding/unsignedSystemUI.apk
I: Baksmaling...
Exception in thread "main" java.lang.RuntimeException: bad magic value: 64 65 78 0a 30 33 36 00
at org.jf.dexlib.DexFile.<init>(DexFile.java:377)
at org.jf.dexlib.DexFile.<init>(DexFile.java:274)
at brut.androlib.src.SmaliDecoder.decode(SmaliDecoder.java:48)
at brut.androlib.src.SmaliDecoder.decode(SmaliDecoder.java:33)
at brut.androlib.Androlib.decodeSourcesSmali(Androlib.java:68)
at brut.androlib.ApkDecoder.decode(ApkDecoder.java:85)
at brut.apktool.Main.cmdDecode(Main.java:120)
at brut.apktool.Main.main(Main.java:57)
This points to erros in Backsmaling and the backsmali files being too old. I then hunted arround and found a neat little tool to deompile apks and the jar files to make them editable. This did not work either giving me the same error. I then found an update backsmali.jar and smali.jar ver 1.3.2 from here: and it decompiled the systemui.apk perfectly.
Can we intergrate the newer versions of the smali 1.3.2 files into apk manager to decompile ICS roms? This is a bit beyond me!
Progress update:
Ok I have download the source apktool using ubuntu. The next stage is to download API15 and add it into the source then rebuild, but not sure how to do that yet. I know I have API15 on my Windows PC but dont know what files I need to update apktool to API15. Will keep working on it though!
Yep, it's a problem right now. Check out this issue:
http://code.google.com/p/android-ap... Type Status Priority Milestone Owner Summary
Someone posted a hacked apktool.jar which seems to work but I'm not sure if I trust the results.
rmk40 said:
Yep, it's a problem right now. Check out this issue:
http://code.google.com/p/android-ap... Type Status Priority Milestone Owner Summary
Someone posted a hacked apktool.jar which seems to work but I'm not sure if I trust the results.
Click to expand...
Click to collapse
Can I ask why you do not trust the results?
I have tried with the hacked version and so far I am now able to decompile and compile the systemui.apk with out any problems! But still got errors compiling framework-res.apk so still some issues there! All I did was modify value.xml file to enable crt animation!
Hi, for to decompile all apk must remove classes.dex from this apk and decompile with apktool1.4.2.....after compile with 1.4.3 and reinsert classes.dex into the apk
same problem with me,also looking for help.
rmk40 said:
Yep, it's a problem right now. Check out this issue:
http://code.google.com/p/android-ap... Type Status Priority Milestone Owner Summary
Someone posted a hacked apktool.jar which seems to work but I'm not sure if I trust the results.
Click to expand...
Click to collapse
In this way,decomplie is ok,but re-complie still has problem
I ive noticed that you cant compile with this just yet. Looks as if we are going to have to wait for a rebuilt tool!
From what I can see the current apktool.jar was built with API14. ICS 4.03 is built with API15. What we need is to have the apktool.jar updated with API5. This involves building the apktool from source which I believe is available but I dont know how to do this
Source code link here:
Ok I have download the source apktool using ubuntu. The next stage is to download API15 and add it into the source then rebuild, but not sure how to do that yet. I know I have API15 on my Windows PC but dont know what files I need to update apktool to API15. Will keep working on it though!
where is this said hacked apktool?
oh nm i found it in that post...
says it only works 0n 4.0.3 tho hmmm i will try with the 4.0.4 gapps anyways and see
GhostXSeries said:
Ok I have download the source apktool using ubuntu. The next stage is to download API15 and add it into the source then rebuild, but not sure how to do that yet. I know I have API15 on my Windows PC but dont know what files I need to update apktool to API15. Will keep working on it though!
Click to expand...
Click to collapse
I don't know either
Unfortunately I chose to learn flash ActionScript 2 years ago (it was useful at the time - I had Samsung Tocco Lite and made flash themes for it) but since moving to Android I realised flash doesn't do a lot of good when working with java so at some point I really need to learn java
Sent from my HTC Sensation XE with Beats Audio Z715e using xda premium
I dont know what to do here, I have updated my sdk, made sure i installed theright framework. done everything from replacing the aapt file to replacing the apktool file. Its ridiculous that compiling the SystemUI.apk has to be this difficult, if it can be decompiled easily why cant the reverse be just as simple??
I cant get SystemUI.apk to compile, it starts the process then just errors out.
Has anybody found a workaround for this? Updating my SDK and aapt and apktool didn't work for me.
Sent from my HTC Sensation using Tapatalk
It looks as if we need to download the source of apktool from git. Add in API15 and the updated smali and backsmali tools, then recompile the apk tool. Unfortunitly this is a little out of my leauge.
If anybody is able to do this it would be awsome!
Out of my skill range as well
Sent from my HTC Sensation using Tapatalk
Do you think it would be possible to simply edit the pngs of systemui without decompiling and recompiling by taking out the .9 pngs to edit those with the .9 editor?
Sent from my HTC Sensation using Tapatalk
GhostXSeries said:
It looks as if we need to download the source of apktool from git. Add in API15 and the updated smali and backsmali tools, then recompile the apk tool. Unfortunitly this is a little out of my leauge.
If anybody is able to do this it would be awsome!
Click to expand...
Click to collapse
Maybe PM leedroid, I think he already done it but I'm not sure so don't take that as gospel truth, just he hinted at it in a post
Sent from my HTC Sensation XE with Beats Audio Z715e using xda premium

How to understand smali file

Can anybody please guide me how to read & understand android smali file.
I just decompiled an apk using Apktool which generates the smali file. This file is written in plain text but the language is not something similar to any other language. I need some guide to understand the app backend functionality. I'm just looking for some sort of Java codes in the backend.
Thanks in advance.
Sent from Nexus 4.
to_sukanta said:
Can anybody please guide me how to read & understand android smali file.
I just decompiled an apk using Apktool which generates the smali file. This file is written in plain text but the language is not something similar to any other language. I need some guide to understand the app backend functionality. I'm just looking for some sort of Java codes in the backend.
Thanks in advance.
Sent from Nexus 4.
Click to expand...
Click to collapse
Hi, .. you could have a look at this guide. It covers most of the stuff required to reverse-engineer an android application. But, be warned.. don't do any stuff that infringes copyrights of someone ... !!

smali help

hello everyone
i searched a lot but couldnt find anything so postiong here
i was trying to add some featues to home.apk and i got some errors while recompiling
so i tried decompile and recompile without editing anything...i didnt even open the decompiled home apk folder LOL
but i am getting lots of smali errors only in styles.xml
i think that apktool removes some templates from styles.xml i dont know what it means i just got it from my search
so can someone help me in fixing that error....
@serajr
 @SpaceCaker
 @marcussmith2626
 @iSiddharth
Either wrong framework loaded or using wrong apktool version
And please stop abusing the mention system - I won't reply to anymore mentions
marcussmith2626 said:
Either wrong framework loaded or using wrong apktool version
And please stop abusing the mention system - I won't reply to anymore mentions
Click to expand...
Click to collapse
Ah sorry
But what do u mean by WRONG apktool version??
abhishekr700 said:
Ah sorry
But what do u mean by WRONG apktool version??
Click to expand...
Click to collapse
use
gingerbread/ics/jb 1.5.2
https://code.google.com/p/android-apktool/downloads/list
jb/kitkat/lolipop apktool rc3
https://bitbucket.org/iBotPeaches/apktool/downloads
use correct framework-res
plus any other framework eg tw-framework
Use Advanced APK Tools for decompiling the APK files and you can also use the Attached Dex Editor to edit classes.dex files.....
Advanced APK tools is specially made for Xperia devicex. (use your "framework-res.apk" to install firmware in Advanced APK Tools)
(Drag and drop classes.dex in "Quick-Baksmali.cmd" to decompile and drag and drop the output folder is "Quick-Smali.cmd" to recompile.
Advanced APK Tools : http://forum.xda-developers.com/showthread.php?t=2639400

Categories

Resources