首页 > 移动平台 > 详细

Android dex ,xml 文件反编译方法

时间:2014-03-20 21:38:41      阅读:528      评论:0      收藏:0      [点我收藏+]

  Dex 文件是Android上运行于delvik的java二进制文件,如果你对其中的内容感兴趣而开发人员没有公布源代码,你可以用如下方法反编译dex文件:

 

    1 解压system.img

 

    用xyaffs2解压system.img 等你所需要解压的img文件:

 

    xyaffs2 img_file output_dir

 

    xyaffs2可以从如下地址下载:

 

    http://limodev.cn/download/xyaffs.tar.gz



    2 从输出目录找到你感兴趣的apk包,用unzip解压apk文件包:

 

    unzip ContactsProvider.apk



    3 用dex2jar工具将解压后的文件夹中的classes.dex转换成jar文件:

 

    dex2jar.sh classes.dex

 

    或者

 

    dex2jar.bat classes.dex

 

    dex2jar的下载地址如下:

 

    http://code.google.com/p/dex2jar/



    4 用unzip解压jar文件:

 

    unzip classes.dex.dex2jar.jar



    5 用DJ java decompiler 反编译jar包中的class文件

 

    DJ一般有图形化界面,操作很简单,可以单个文件反编译,也可以批量反编译。DJ的下载地址如下:

 

    http://members.fortunecity.com/neshkov/dj.html

 

 

 

    安装好之后,安装目录下有一个jad.exe文件,执行:jad -o -r -dF:/src -sjava F:/classes/**/*.class

 


-o  - overwrite output files without confirmation (default: no) 无需确定覆写文件

 


-r  - restore package directory structrure 恢复包目录结构

 


-s - output file extension (by default ‘.jad‘) 如果不设置为-sjava,则默认扩展名为.jad

 


其他的,F:/classes/**/*.class 中的两颗接连的星,表示任意层次的子目录。



    6 用AXMLPrinter反编译xml文件:

 

    java -jar AXMLPrinter2.jar AndroidManifest.xml AndroidManifest2.xml 

 


AXMLPrinter的下载地址如下:

 

    http://android4me.googlecode.com/files/AXMLPrinter2.jar

 

详细说明:http://android.662p.com/thread-4958-1-1.html

Android dex ,xml 文件反编译方法,布布扣,bubuko.com

Android dex ,xml 文件反编译方法

原文:http://www.cnblogs.com/chenzhenghua/p/3610692.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!