您的位置:首页 > 移动开发 > Android开发

Android odex反编译为dex

2017-04-07 00:46 471 查看
1. 准备工具: 
http://code.google.com/p/smali/ 
下载 smali-1.4.2.jar baksmali-1.4.2.jar

 准备dex2jar工具, http://code.google.com/p/dex2jar/
 

2. deodex 将odex文件转换为smali

示例:

# java -jar baksmali-1.4.2.jar -a 7 -x /home/workspace/test1.odex -d /home/workspace/ -o /home/workspace/test1deodex

命令说明:

baksmali -a <api_level>-x <odex_file>-d <framework_dir> -o <output_dir>

具体参见: http://code.google.com/p/smali/wiki/DeodexInstructions
 

3. 将smali打包为dex

# java -jar smali-1.4.2.jar /home/workspace/test1deodex/ -o /home/workspace/test1.dex

 

4. 将dex反编译为jar包

# sh dex2jar.sh /home/workspace/test1.dex

 
得到.jar包后就能通过jd-gui看到反编译的代码了。

5、 反编译 framework.odex

# java -jar baksmali.jar -c :core-junit.odex -x framework.odex

反编译时如果遇到错误:Error while loading ClassPath class Ljunit/extensions/ActiveTestSuite$1;

使用 -c :core-junit.odex
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: