yashsingh1/xdaforums huggingface dataset:
[Android Software Development] Netuser:
Hi,

First thanks for this easy tool :)

I am trying to dedodex 3 apk fron S5 dump 4.4.2, I dont get any error but in CMD window it say copied 1 file and then the curser is blinking for 1 hour now. I can see it copied to of apk in working folder but nothing in dedodexed folder.

What is wrong ?

I am on windows 8.1 x64 and Java is installed and whole framework folder content is copied ot framework folder of tool.

Thanks for your help :)
[Android Software Development] abcdjdj:
Can you please upload the framework files and the 3 apks?
[Android Software Development] youngchaos:
Hello , what level compression should i choose? :) thanks
[Android Software Development] Spannaa:
5 is a good place to start - if you get errors, drop it a level, if you don't, up it a level ;)
[Android Software Development] youngchaos:
I think something is not working properly here, i got good result deodexing the apks but not the framework components.. for example trying to deodexing core.jar i get as output from 1.3mb~ odex to 4kb ,jar file after deodexing... uhm...

what the Jar_log said :\
[Android Software Development] EMSpilot:
error java help

Anyone know why I am getting this error?

LOG:

WELCOME!

Deodexing apk..

Compression=3

API=18

apks\SecEmail_J.odex

1 File(s) copied

usage: java -jar baksmali.jar [options] <dex-file>

disassembles and/or dumps a dex file

-?,--help prints the help message then exits.

Specify twice for debug options

-b,--no-debug-info don't write out debug info (.local,

.param, .line, etc.)

-c,--bootclasspath <BOOTCLASSPATH> the bootclasspath jars to use, for

analysis. Defaults to

core.jar:ext.jar:framework.jar:andro

id.policy.jar:services.jar. If the

value begins with a :, it will be

appended to the default

bootclasspath instead of replacing

it

-d,--bootclasspath-dir <DIR> the base folder to look for the

bootclasspath files in. Defaults to

the current directory

-f,--code-offsets add comments to the disassembly

containing the code offset for each

address

-l,--use-locals output the .locals directive with

the number of non-parameter

registers, rather than the .register

directive with the total number of

register

-o,--output <DIR> the directory where the disassembled

files will be placed. The default is

out

-p,--no-parameter-registers use the v<n> syntax instead of the

p<n> syntax for registers mapped to

method parameters

-r,--register-info <REGISTER_INFO_TYPES> print the specificed type(s) of

register information for each

instruction. "ARGS,DEST" is the

default if no types are specified.

Valid values are:

ALL: all pre- and post-instruction

registers.

ALLPRE: all pre-instruction

registers

ALLPOST: all post-instruction

registers

ARGS: any pre-instruction registers

used as arguments to the instruction

DEST: the post-instruction

destination register, if any

MERGE: Any pre-instruction register

has been merged from more than 1

different post-instruction register

from its predecessors

FULLMERGE: For each register that

would be printed by MERGE, also show

the incoming register types that

were merged

-s,--sequential-labels create label names using a

sequential numbering scheme per

label type, rather than using the

bytecode address

-v,--version prints the version then exits

-x,--deodex deodex the given odex file. This

option is ignored if the input file

is not an odex file

UNEXPECTED TOP-LEVEL EXCEPTION:

java.lang.RuntimeException: Cannot find file or directory "out/"

at org.jf.smali.main.main(main.java:173)

File not found - classes.dex

0 File(s) copied

apks\SecEmail_J.apk

1 File(s) copied

C:7za.exe

1 File(s) copied

C:\gs4\Universal Deodexer V4\working\build\Done.apk

1 File(s) copied

The system cannot find the file specified.

Could Not Find C:\gs4\Universal Deodexer V4\framework\classes.dex

DEODEXED SUCCESSFULLY.

Press any key to continue . . .

Thanks
[Android Software Development] Netuser:
Thanks for the reply, after one day it is still blinking lol

I am uploading files now, will PM you the links.

Thanks for all your help :)
[Android Software Development] abcdjdj:
Kindly enable debug mode and post a screenshot of the deodexing window.

Have you replaced smali and baksmali.jar with a newer version?
[Android Software Development] EMSpilot:
Yes same error
[Android Software Development] youngchaos:
My debug ->

WELCOME!
DEODEXING JAR..
Compression=5
API=14

Error occured while disassembling class Ljava.lang.RealToString; - skipping clas
s
java.lang.RuntimeException: Invalid method index: 29
at org.jf.dexlib.Code.Analysis.InlineMethodResolver$InlineMethodResolver
_version36.resolveExecuteInline(InlineMethodResolver.java:157)
at org.jf.dexlib.Code.Analysis.DeodexUtil.lookupInlineMethod(DeodexUtil.
java:64)
at org.jf.dexlib.Code.Analysis.MethodAnalyzer.analyzeExecuteInline(Metho
dAnalyzer.java:3467)
at org.jf.dexlib.Code.Analysis.MethodAnalyzer.analyzeInstruction(MethodA
nalyzer.java:1087)
at org.jf.dexlib.Code.Analysis.MethodAnalyzer.analyze(MethodAnalyzer.jav
a:213)
at org.jf.baksmali.Adaptors.MethodDefinition.addAnalyzedInstructionMetho
dItems(MethodDefinition.java:389)
at org.jf.baksmali.Adaptors.MethodDefinition.getMethodItems(MethodDefini
tion.java:311)
at org.jf.baksmali.Adaptors.MethodDefinition.writeTo(MethodDefinition.ja
va:132)
at org.jf.baksmali.Adaptors.ClassDefinition.writeMethods(ClassDefinition
.java:338)
at org.jf.baksmali.Adaptors.ClassDefinition.writeDirectMethods(ClassDefi
nition.java:294)
at org.jf.baksmali.Adaptors.ClassDefinition.writeTo(ClassDefinition.java
:116)
at org.jf.baksmali.baksmali.disassembleDexFile(baksmali.java:186)
at org.jf.baksmali.main.main(main.java:308)

Error occured while disassembling class Ljava.math.Conversion; - skipping class
java.lang.RuntimeException: Invalid method index: 29
at org.jf.dexlib.Code.Analysis.InlineMethodResolver$InlineMethodResolver
_version36.resolveExecuteInline(InlineMethodResolver.java:157)
at org.jf.dexlib.Code.Analysis.DeodexUtil.lookupInlineMethod(DeodexUtil.
java:64)
at org.jf.dexlib.Code.Analysis.MethodAnalyzer.analyzeExecuteInlineRange(
MethodAnalyzer.java:3505)
at org.jf.dexlib.Code.Analysis.MethodAnalyzer.analyzeInstruction(MethodA
nalyzer.java:1090)
at org.jf.dexlib.Code.Analysis.MethodAnalyzer.analyze(MethodAnalyzer.jav
a:213)
at org.jf.baksmali.Adaptors.MethodDefinition.addAnalyzedInstructionMetho
dItems(MethodDefinition.java:389)
at org.jf.baksmali.Adaptors.MethodDefinition.getMethodItems(MethodDefini
tion.java:311)
at org.jf.baksmali.Adaptors.MethodDefinition.writeTo(MethodDefinition.ja
va:132)
at org.jf.baksmali.Adaptors.ClassDefinition.writeMethods(ClassDefinition
.java:338)
at org.jf.baksmali.Adaptors.ClassDefinition.writeDirectMethods(ClassDefi
nition.java:294)
at org.jf.baksmali.Adaptors.ClassDefinition.writeTo(ClassDefinition.java
:116)
at org.jf.baksmali.baksmali.disassembleDexFile(baksmali.java:186)
at org.jf.baksmali.main.main(main.java:308)
out\java\lang\RealToString.smali[0,-1] mismatched input '<EOF>' expecting END_ME
THOD_DIRECTIVE
out\java\math\Conversion.smali[0,-1] no viable alternative at input '<EOF>'
File not found - classes.dex
0 File(s) copied
apks\core.jar
1 File(s) copied
C:7za.exe
1 File(s) copied
C:\Users\YoungChaos\Desktop\Universal Deodexer V4\Universal Deodexer V4\working\
build\Done.jar
1 File(s) copied
Could Not Find C:\Users\YoungChaos\Desktop\Universal Deodexer V4\Universal Deode
xer V4\framework\classes.dex
DEODEXED SUCCESSFULLY.
Press any key to continue . . .

Thanks!
[Android Software Development] stopro:
Just read and mean wot , have to copy stright from phone or from stock img, or this odex in phone
[Android Software Development] abcdjdj:
Please don't replace it. Kindly try using the included ones.

Which phone and android version are you trying to deodex? It seems that you need a custom inline method table of your device.
[Android Software Development] abcdjdj:
Didn't get you..
[Android Software Development] stopro:
Wot i ment by that in op it says take and copy , but i dnt get i have to copy stright from phone to pc and after deodex copy bk into phone or get img/zip and extract and deodex or wot or this doing on the fly thx
[Android Software Development] abcdjdj:
Either of the methods will work. In my opinion, pulling the stuff from your device is easier.
[Android Software Development] stopro:
Ok if i pull from phone deodex , and wot now have to copy back into phone, a if odex still persist in app and framework . if u dnt mind can u write steps how to do am not nob but still lerning about things cos with s2 i had all served on plate but now have to take speed courses thx
[Android Software Development] youngchaos:
Hello my friend , i'm trying deodexing a Coolpad rom for 9976A , it's mtk6592 based rom :)
[Android Software Development] TechBurner:
Can this tool deodex framework folder?If not can anyone guide me how to?
[Android Software Development] abcdjdj:
Have you selected the Android Version in the right side box?

Just place all the files of /system/framework in the "apks" folder and it will be deodexed like other normal apks. Just be sure to select deodex jars in the menu and after that, deodex apks if you have any apks in the framework folder.
[Android Software Development] XperiaCrazy:
Yes I did
[Android Software Development] abcdjdj:
This indeed is the weirdest thing that I've ever seen. All the files already have a classes.dex in them and they even have odex files at the same time. I need to investigate more into this issue. Please give me more time. Thanks.

The regCount error should have been fixed by selecting the correct android version. Can you please upload the framework files and the Settings.apk with the odex file?
[Android Software Development] Netuser:
Take all the time you need :) and thanks again for all your help :)
[Android Software Development] Daniel D.:
I've the same problems with the Xperia SP 4.3 Settings.apk. Here are the needed files.

Xperia SP (C5303) 4.3 Settings.apk with Settings.odex

Xperia SP (C5303) 4.3 Framework Folder
[Android Software Development] abcdjdj:
Here you go - https://www.dropbox.com/s/b6pjtlnbee57o5r/Settings.apk
[Android Software Development] Daniel D.:
Thanks. How can we prevent it? What was the reason for this error?
[Android Software Development] abcdjdj:
Could be because of the outdated smali and baksmali. I deodexed it with the latest version. Btw V5 is coming very soon. :D
[Android Software Development] Netuser:
Cant wait for new version I really need to do some deodexing :D I hope the bug I am having will be resolved
[Android Software Development] PigFire:
I copied all framework file, and apk as mentioned in OP and i click deodex all apk but noting happen and i wait for so long. Stock kitkat rom
[Android Software Development] abcdjdj:
Nothing happened? As in no window opened or it got stuck while deodexing?
[Android Software Development] PigFire:
No window opened / cmd, i set android version default and compression = 5.
[Android Software Development] Spannaa:
You need to set Android Version to 4.3 for KitKat roms.

BTW, your sig image is too long - it breaks the forum formatting ;)
[Android Software Development] spiderio:
I have kitkat Rom, When I tried to deodexing all the framework folder

and put in the roms

it endup bootloop

no error occurend on the deodexing process

here is the logcat

I/PackageManager(12499): /system/priv-app/BackupRestoreConfirmation.apk changed; collecting certs

I/dalvikvm(12499): DexOpt: mismatch dep name: '/data/dalvik-cache/system@framework@core.jar@classes.dex' vs. '/system/framework/core.odex'

E/dalvikvm(12499): /system/priv-app/BackupRestoreConfirmation.apk odex has stale dependencies

E/dalvikvm(12499): odex source not available -- failing

I/PackageManager(12499): /system/priv-app/ConfigUpdater.apk changed; collecting certs

I/dalvikvm(12499): DexOpt: mismatch dep name: '/data/dalvik-cache/system@framework@core.jar@classes.dex' vs. '/system/framework/core.odex'

E/dalvikvm(12499): /system/priv-app/ConfigUpdater.apk odex has stale dependencies

E/dalvikvm(12499): odex source not available -- failing

I/PackageManager(12499): /system/priv-app/DefaultContainerService.apk changed; collecting certs

I/dalvikvm(12499): DexOpt: mismatch dep name: '/data/dalvik-cache/system@framework@core.jar@classes.dex' vs. '/system/framework/core.odex'

E/dalvikvm(12499): /system/priv-app/DefaultContainerService.apk odex has stale dependencies
[Android Software Development] abcdjdj:
Are you sure that the files got deodexed properly without errors? Please enable debug mode and post a screenshot of the deodexing window.
[Android Software Development] jazzespresso:
any plan to support Android 4.4.2?
[Android Software Development] Spannaa:
Just select Android 4.3 and it works for 4.4.2 kitkat roms but...
[Android Software Development] jazzespresso:
I thought the same - selecting 4.3, but some strange reason when I was trying to deodex the stock LG G Pad 8 android 4.4.2, it was trying..trying...trying...took a lunch break, back in 45 mins, it still nothing.....not sure why....but after an hour waiting, I had to cancel out....
[Android Software Development] Spannaa:
I managed to deodex stock 4.4.2 for my Nexus 7 WiFi (2012) with this so I guess the LG rom has some big differences.

Guess you'll have to wait for V5...
[Android Software Development] zelipukin:
mtk question, been answered already

stupid mtk question, been answered already
[Android Software Development] abcdjdj:
MTK devices require a custom method inline table. Just hang on. I'm working on it..
[Android Software Development] JrSmilez:
I was going to chalk my cmd window just sitting there up to having LG, but when I type in the command "java -jar Universal Deodexer V4.jar" I get this error......

Error: Could not find or load main class ûjar

I have java installed and in my environment. Thanks for any help or pointing me in the right direction.
[Android Software Development] abcdjdj:
The correct command is :-

java -jar "Universal Deodexer V4.jar"
[Android Software Development] swat4samp:
When i click on deodex all apks, nothing happens. No command prompt window opens. I have Java and everything installed on my laptop. My device galaxy fit and ROM is CM9 based.
[Android Software Development] abcdjdj:
Cm9 is already deodexed, unless it has been specifically re-odexed. Go to system/app and check if you see any odex files at all.
[Android Software Development] swat4samp:
As i said before, its a custom ROM based on CM9 and it has odex files for system apks as well as jar files in framework folder.
[Android Software Development] abcdjdj:
Version #5

Hi guys,

Version #5 is out. Changelog:-

V5
-->Re-wrote the entire tool from scratch (improved code, more efficient and professional code)
-->Added KitKat support
-->Updated to latest Smali and Baksmali (2.0.3)
-->Fixed the logging mechanism. Now everything gets logged properly in the file.
-->No more annoying windows opening and closing. Everything gets done in one window silently.
-->Added a verification check to see if the deodexing is successful
-->Added an option to reset tool to default (clears all files, makes it just as it was when downloaded)
-->Using a single script to deodex jar and apk files
-->Removed the flashy multi-coloured background. Switched to a simple Holo blue background
-->Lots of other small fixes and changes

Regards,

abcdjdj
[Android Software Development] abcdjdj:
Try using V5;)
[Android Software Development] -CALIBAN666-:
wow,cool update,great work.thanx
[Android Software Development] abcdjdj:
Sorry guys, the V5 which I had uploaded wasn't working because the folder name had a space in it. Uploaded the fixed version
[Android Software Development] swat4samp:
Will try it. Uh one question: there is no deodex and odex folders. where should i place apks or jars to be deodexed?
[Android Software Development] Spannaa:
I guess that all of the apks, jars and odex files go in the source folder and the deodexed files appear in the done folder.
[Android Software Development] swat4samp:
Terribly sorry for not checking OP :o And thanks for the latest version, now it works fine :good:
[Android Software Development] -CALIBAN666-:
no problem,many thanx for fast fix and report,have a nice day.greeetz
[Android Software Development] kermage:
thanks for the update :good:
[Android Software Development] JrSmilez:
1st I want to say thanks for the awesome work. I know you put a lot of work into it. I am a little confused. This is what I'm getting at the end of the launcher window but I'm not sure why its failing. I have a log here if you have a minute to look at it I would appreciate it. I've looked at it but I'm just not sure what to look for.

Everything is Ok

1 file(s) copied.

DEODEXING COMPLETE!

================COMPLETED DEODEXING===============

===================DEODEXED 1 of 1===============

Done checking 100%

FAILED : LGUSMms.apk

Writing Log to file..

DONE WRITING.

=======DEODEXING PROCESS COMPLETE=====

Here is the Log

Oh and I don't know if this matters but it worked the 1st time but forced closed on me so I tried to lower the compression but then it started failing.
[Android Software Development] abcdjdj:
Redownload the tool. You seem to be using the incorrect one. I have updated the download link.
[Android Software Development] knightzero07:
I am deodexing framework & apk files using this tool :) nice work

I just got a problem on deodexing framework. My framework has "jex" files and odex files

Any idea on jex files?
[Android Software Development] Spannaa:
What device and rom are you using?

Are they .jar.jex files?

Sent from my GT-I9300...
[Android Software Development] knightzero07:
It's a stock rom of Starmobile Diamond X1

and yeah they are jar.jex files
[Android Software Development] Androlover98:
Great job. I could not deodex my framework in v4. Hope it works in v5. Secondly the deodexer automatically removes the already deodexed apks. So Maddy, you still have to work on it. Still, its quicker. Just more accuracy and you are done.?
[Android Software Development] Spannaa:
I've only ever heard of .jar.jex framework files in the Aliyun OS (a Chinese fork of Android) so I suspect you're not going to be able to fully deodex your rom.
[Android Software Development] abcdjdj:
No it doesn't remove the deodexed stuff automatically. There's something wrong with your method of using the tool. I'll upload a video on YouTube asap.
[Android Software Development] Lord AJ:
I'm gettingthe error that java is not an operable batch file or executable even though I have both jre and jdk installed. What do you think could've gone wrong ???
[Android Software Development] abcdjdj:
This should help you - http://www.kingluddite.com/tools/how-do-i-add-java-to-my-windows-path

Just replace the jdk folder name with the one on your pc and it should work.
[Android Software Development] Lord AJ:
Will try this as soon as I get back yo my pc. thanks for the reply.
[Android Software Development] swat4samp:
I tried to deodex my settings.apk from CM9 based custom rom and its showing failed as well as done in log :rolleyes: Please check the log http://pastebin.com/42kWn2iF
[Android Software Development] thermax04:
Instructions :-

2. Open the folder and place your framework files [/system/framework] in the "framework" folder.

I have note 3 KK 4.4.2 , in framework folder there are 167 files, should i copy all these 167 files?

wanna to deodex Hangouts.apk from my stock rom, but it does not has odex file! can I deodex it?
[Android Software Development] abcdjdj:
You haven't kept the framework files in the "framework" folder of the tool.

Yes, copy all 167 files. If it doesn't have an odex file then it must already be deodexed. Open the apk with winrar and check for a classes.dex file. If you see it, then it is deodexed already.
[Android Software Development] swat4samp:
I should copy all the framework files including jar files too ?:confused:
[Android Software Development] abcdjdj:
Yes
[Android Software Development] Lord AJ:
Hi there,

I successfully deodexed the files from /system/app but I'm unable to use adb push to push them to the phone. I used the adb.exe file from the working folder you provided. it shows error: device not found even though the device's connected. I also tried this using the adb.exe from another source but there it returns permission denied and on trying to use adb remount after entering adb root that version shows adbd cannot run as root in production builds. Please help me :( !! Also can I use this tool to deodex the files in /system/framework ?? Thanks a lot.
[Android Software Development] abcdjdj:
Don't execute the "adb root" command. Just follow these steps - http://xdaforums.com/showpost.php?p=51816881&postcount=2

For deodexing the framework files, keep them in the "source" folder as you had done for apks and then choose the deodex option as done earlier.
[Android Software Development] swat4samp:
Thanks. Now it worked :good:
[Android Software Development] Lord AJ:
I did as the poster on that forum said but still I ended up in a bootloop. I think that the files were transferred correctly as I got several force close popups. But after the reboot command, the phone went to a bootloop with only the company name showing (not even the bootanimation) and I had to take it to the service center (my recovery couldn't restore the backup I made:( ). Maybe I made a mistake while choosing the compression level or the os version. (I'm running 2.3.6 but the closest option was 2.3.4 which was the one I chose) Any ideas how to do it properly ???
[Android Software Development] abcdjdj:
Firstly, please check the end of the log in the working folder, and look for the Verification lines at the end. If you see something like FAILED : XYZ.apk then the deodexing process wasn't successful.
[Android Software Development] Androlover98:
Check out your environment variables. If java is not there, add it.
[Android Software Development] Lord AJ:
Yeah I saw failed on deodexing both /system/app and /system/framework. Did that mean something was wrong? I thought that was something about pushing the files back. I should've checked the bat file.
[Android Software Development] abcdjdj:
Post the log here
[Android Software Development] Lord AJ:
Here are the logs for both the app and framework:
[Android Software Development] abcdjdj:
This happens because the path to the tool's folder contains a space somewhere. Try extracting the tool directly in the root of the drive (C:\ or D:\ etc.)
[Android Software Development] Lord AJ:
Still no good :( I'm getting the same failed written at the end of the prompt.
[Android Software Development] abcdjdj:
What is the name of the folder that you get after extracting the zip file?
[Android Software Development] Lord AJ:
its Universal_Deodexer_V5 (no space here too)
[Android Software Development] abcdjdj:
Open up deodex.bat and go to line 22. The original line looks like this -

java -jar baksmali.jar -a %api% -x %filename%.odex -d %cd% 2> error.log

Wrap the %cd% within double quotes so it looks like this -

java -jar baksmali.jar -a %api% -x %filename%.odex -d "%cd%" 2> error.log

Then try.
[Android Software Development] Lord AJ:
Sorry bro. Will try this tomorrow. its 2:00 here in India and I gotta get up early. Will surely try tomorrow. Thanks a ton.
[Android Software Development] Lord AJ:
I tried this and changed the code as you said but um still getting that "FAILED" written at the end of the cmd prompt.
[Android Software Development] abcdjdj:
Have you replaced smali and baksmali.jar with some other version?
[Android Software Development] Lord AJ:
No I haven't. But I'll redownload and re-extract the zip n try again.
[Android Software Development] Lord AJ:
I tried this and this time I didn't get failed written at the end of the prompt but I noticed some errors which said that "system could not find the path specified" I'm worried as this might be an error. Here's the log:
[Android Software Development] abcdjdj:
It's saying that it can't find the jar files. Have you deleted them accidentally?
[Android Software Development] Lord AJ:
Which jar files. No I didn't delete any file before doing this. I extracted the archive to root of d: , copied the framework folder, put the framework files in the source folder, ran launcher.bat and deodexed the files.