反编译odex

需要工具:

 1、baksmali-x.x.x.jar
 2、smali-x.x.x.jar

工具下载:https://bitbucket.org/JesusFreke/smali/downloads/

步骤:

1、odex转smali:

java -jar “D:\google\tool\mony_tool\baksmali-2.2.1.jar” deodex SystemUI.odex -o SystemUI

deodex是命令,-o SystemUI指在目录下生成一个SystemUI的文件夹,把生成的smali文件放到这个文件夹底下

2、smali转dex:

java -jar “D:\google\tool\mony_tool\smali-2.2.1.jar” assemble SystemUI -o classes_o.dex

3、把生成的classs_o.dex用jadx-gui等工具转换成代码。

错误:

Error occurred while loading class path files. Aborting.
org.jf.dexlib2.analysis.ClassPathResolver$ResolveException: org.jf.dexlib2.analysis.ClassPathResolver$NotFoundException: Could not find classpath entry boot.oat
        at org.jf.dexlib2.analysis.ClassPathResolver.<init>(ClassPathResolver.java:145)
        at org.jf.dexlib2.analysis.ClassPathResolver.<init>(ClassPathResolver.java:105)
        at org.jf.baksmali.AnalysisArguments.loadClassPathForDexFile(AnalysisArguments.java:129)
        at org.jf.baksmali.AnalysisArguments.loadClassPathForDexFile(AnalysisArguments.java:86)
        at org.jf.baksmali.DisassembleCommand.getOptions(DisassembleCommand.java:207)
        at org.jf.baksmali.DeodexCommand.getOptions(DeodexCommand.java:71)
        at org.jf.baksmali.DisassembleCommand.run(DisassembleCommand.java:181)
        at org.jf.baksmali.Main.main(Main.java:102)
Caused by: org.jf.dexlib2.analysis.ClassPathResolver$NotFoundException: Could not find classpath entry boot.oat
        at org.jf.dexlib2.analysis.ClassPathResolver.loadLocalOrDeviceBootClassPathEntry(ClassPathResolver.java:216)
        at org.jf.dexlib2.analysis.ClassPathResolver.<init>(ClassPathResolver.java:120)
        ... 7 more

把手机/system/framework/arm64/底下的文件全部拷贝到SystemUI.odex所在的目录底下:
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/lixpjita39/article/details/88529889
今日推荐