反编译Android项目得到源代码和资源文件

 本博客主要利用开源工具对只有apk文件的Android项目进行反编译,对其内容进行参考,只为学习和交流使用。 

  1、下载反编译所需要的工具:

    1)、dex2jar 这个工具是将.dex文件反编译为.class文件。 项目地址:http://code.google.com/p/dex2jar/ 
     工具下载地址:http://code.google.com/p/dex2jar/downloads/detail?name=dex2jar-0.0.9.8.zip&can=2&q= 

    2)、JD-GUI 工具,这个工具可以将dex2jar工具反编译出来的.class文件反编译为.java文件
      项目地址:http://java.decompiler.free.fr/?q=jdgui 
      工具下载:http://java.decompiler.free.fr/jd-gui/downloads/jd-gui-0.3.3.windows.zip 

    下载好文件后,将上面下载的两个工具分别解压到一个目录里

        3)、下载apktool工具,用来还原apk文件中压缩后的xml文件
      项目地址:http://code.google.com/p/android-apktool/ 
      工具地址:http://android-apktool.googlecode.com/files/apktool1.4.3.tar.bz2
                      http://android-apktool.googlecode.com/files/apktool-install-windows-r04-brut1.tar.bz2  
      下载两个文件,并将两文件中的内容解压到同一个目录下 

  2、开始反编译

    1)、将你要反编译的.apk包解压,得到classes.dx文件,并拷贝到dex2jar工具的根目录,如图:

                         

          

              2)、打开命令行窗口,转到dex2jar的根目录执行如下命令:dex2jar.bat classes.dex,当看到如下信息时,表示反编译为.class文件成功
        
 
                                这时在dex2jar的根目录下回多出一个classes_dex2jar.jar文件,反编译好的.class文件就在该jar包里

      3)、利用JD-GUI工具将.class文件反编译为.java文件    
                 运行jd-gui.exe -> 打开刚才得到的classes_dex2jar.jar文件

                       

      4)、还原资源文件

        打开命令行并进入到apktool的根目录,输入如下命令: apktool.bat d d:\weibo.apk d:\weibo //这个命令中d:\weibo.apk 是你的apk文件存放目录(最好放到根目录);d:\weibo 是你还原后资源文件的存放目录(这个目录不用提前创建)

      命令:

          

                        

      得到的文件:      

                           


   注:本博客纯粹为了交流和学习,请遵守相关法律法规


 

 


posted @ 2012-03-20 09:19  剑杰  阅读(1152)  评论(0)    收藏  举报