like the title says
You need baksmali
http://code.google.com/p/smali/
And then what do I do? i Dled it.
I'm trying to open classes.dex located in system/framework/android.policy
Extract classes.dex from /system/framework/android.policy.jar and then do:
java -jar baksmali.jar classes.dex
You will end up with a folder named "out" which will hold decompiled classes.dex
Eddie1506 said:
Extract classes.dex from /system/framework/android.policy.jar and then do:
java -jar baksmali.jar classes.dex
You will end up with a folder named "out" which will hold decompiled classes.dex
Click to expand...
Click to collapse
Where should I put the baksmali.jar file on my PC ? Should it be in java folder or anywhere is fine as long as i open the command window from there ?
Related
Guys, I'm editing some files in services.jar. So I extract the classes.dex, which is about 1mb. Using baksmali, I disassemble all the files to the com folder, which ends up being 8-9mb uncompressed. After making my changes, I try reassembling the classes.dex, but my file ends up being 9mb. Even if I insert it into the services.jar, that file is still 4.5mb. Obviously I am unable to boot. Can anyone let me know how to get this to work?
These are the commands I am using.
disassembling:
java -Xmx512m -jar baksmali-1.2.1.jar -o c:\smali classes.dex
and reassembled later:
java -Xmx512m -jar smali-1.2.1.jar -o classes.dex c:\smali
Maybe this should be in development......
eViL D: said:
Guys, I'm editing some files in services.jar. So I extract the classes.dex, which is about 1mb. Using baksmali, I disassemble all the files to the com folder, which ends up being 8-9mb uncompressed. After making my changes, I try reassembling the classes.dex, but my file ends up being 9mb. Even if I insert it into the services.jar, that file is still 4.5mb. Obviously I am unable to boot. Can anyone let me know how to get this to work?
These are the commands I am using.
disassembling:
java -Xmx512m -jar baksmali-1.2.1.jar -o c:\smali classes.dex
and reassembled later:
java -Xmx512m -jar smali-1.2.1.jar -o classes.dex c:\smali
Click to expand...
Click to collapse
The commands I use I got from this post.
Thanks for you answer, I got it figured out.
hmmm how did you get this working? Cause that post just has what you did here...
I'm having the same problem, I just get boot loops after pushing my custom jar file :-/
oops I spoke too soon.. managed to get it working after like 10th or so try lol
I was able to do this about a month ago and I deleted all my files but now I am in need of it as I am trying to make an overscroll glow for this phone and I can't even remember where to start.
Skyler2Dope said:
I was able to do this about a month ago and I deleted all my files but now I am in need of it as I am trying to make an overscroll glow for this phone and I can't even remember where to start.
Click to expand...
Click to collapse
http://code.google.com/p/android-apktool/
apktool is what I use, works like a champ!
I have downloaded that but I dont know where to start really...any help would be much appreciated.
Needed:
Android sdk
Winrar
smali/baksmali tool
How to get the .jar you want:
Go into command get to platform folder inside Android sdk.
(example I'll use Android.policy.jar located in /system/framework/)
Code:
adb pull /system/framework/Android.policy.jar
This pulls .jar to your platform-tools folder. Now open .jar with winrar and extract classes.dex into tools folder; where smali and baksmali files are. Go into CMD this time get into the tools folder.
Run this in CMD
Code:
java -jar baksmali.jar /dexout/ classes.dex
Make your changes to the dex now that it's extracted. When your ready to recompile use this command:
Code:
java -Xmx512M -jar smali.jar /dexout/ new-classes.dex
Now just move new-classes.dex to desktop and rename to classes.dex then drag into .jar file we used earlier. Now to push back to phone I like to go into cwm when I'm pushing back to phone so that there is no issues.
Code:
adb push Android.policy.jar /system/framework/
Reboot or boot if you pushed whole in cwm.
Posted this in a reply and figured I'd also post it as a thread so it's easier to find.
**Always backup any original file before modifying. If your phone doesn't boot push that backup to your phone.**
Needed:
Android sdk
Winrar
smali/baksmali tool
How to get the .jar you want:
Go into command get to platform folder inside Android sdk.
(example I'll use Android.policy.jar located in /system/framework/)
Code:
adb pull /system/framework/Android.policy.jar
This pulls .jar to your platform-tools folder. Now open .jar with winrar and extract classes.dex into tools folder; where smali and baksmali files are. Go into CMD this time get into the tools folder.
Run this in CMD
Code:
java -jar baksmali.jar /dexout/ classes.dex
Make your changes to the dex now that it's extracted. When your ready to recompile use this command:
Code:
java -Xmx512M -jar smali.jar /dexout/ new-classes.dex
Now just move new-classes.dex to desktop and rename to classes.dex then drag into .jar file we used earlier. Now to push back to phone I like to go into cwm when I'm pushing back to phone so that there is no issues.
Code:
adb push Android.policy.jar /system/framework/
Reboot or boot if you pushed whole in cwm.
For some reason this is not working I keep getting the help menu
jared407 said:
For some reason this is not working I keep getting the help menu
Click to expand...
Click to collapse
yea same with me
edit, just realized that was some old parameter most likely that was just telling the directory to put the files to.
Read the help file and found out the default is "out" so just leave that part out the /dexout/ part and its good to go.
check this thread here for updates on commands to use
http://forum.xda-developers.com/showthread.php?t=549309
remember to change the name of the smali and backsmali files because the ones you probably downloaded have the versions in there.
Hello
I am trying to Deodex my SG4 stoke rom secphone.odex
I read almost all threads here before posting this but still have some errors..
that's the steps I did
1-Pull framework folder from my phone and put it under c:\framework
2-run this command
java -jar baksmali.jar -d C:\framework -x secphone.odex
and it generate the "out" folder..
3- run this command
java -Xmx512m -jar smali.jar out -o classes.dex
and it generates the classes.dex file
4-Open the secphone.apk with 7zip and add the classes.dex on the root..
now when i put the secphone.apk on my phone and set permissions, the phone app always gives error that it stopped and keep poping this error until i restore the original apk..
whats missing me here to have it work?
regards
Hi Romeo,
Did you found a solution? I have the same problem.
Thanks
Me too, same problem.
I pulled /system/framework/services.jar three times now, and extracted the classes.dex. Then decompiled the classes.dex with "java -jar baksmali.jar -o classout/ classes.dex" and navigated to classout/com/android/server. The problem is the dir is missing the "status" folder. I did this with VTS 10, colorchange.jar, and manually .. same result. Thoughts?