Android 反编译apk文件

来源:互联网 发布:锤子官网域名不是t.tt 编辑:程序博客网 时间:2024/04/29 04:23

需要的工具:

apktool:将apk文件反编译成原始的目录文件

地址:http://code.google.com/p/android-apktool/downloads/list

dex2jar:将dex文件转化为jar文件

地址:http://code.google.com/p/dex2jar/downloads/list

jd-gui:将jar转换为.java的源代码,查看java代码

 

一、   使用apktool工具将apk文件反编译成原始目录文件

如果直接把apk文件解压开,可以看到以下文件内容,


当打开AndroidManifest.xml的时候会发现是一大堆乱码。如果想看到AndroidManifest.xml文件中的内容,我们需要做如下操作。

A、     打开DOS窗口,切换到存放apktool工具的目录下

B、     输入并执行命令:apktool d  jmcAD.apk    自动生成jmcAD文件夹,打开内容如下


C、     打开AndroidManifest.xml,显示正常


二、   使用dex2jar工具将dex文件转化为jar文件

A、     将解压开的apk文件中的classes.dex文件复制到dex2jar工具目录下

B、     在DOS窗口中切换到dex2jar工具目录,输入并执行命令:dex2jar   classes.dex  ,此时在当前目录下会新生成classes_dex2jar.jar文件


三、   使用jd-gui工具将jar文件转换为java代码

打开jd-gui工具,刚刚生成的classes_dex2jar.jar拖入到打开后的jd-gui窗口中即可看到java代码


 

四、把反编译的文件夹修改后重新打包

  如:test文件夹重新打包生成test.apk

输入命令:

apktool b  test  test.apk


五、给重新打包生成的apk签名,可系统签名,也可普通签名

系统签名,输入命令:

java -jar signapk.jar platform.x509.pem   platform.pk8   test1.apk   test.apk


apk反编译任务完成!!!

 

工具下载路径:http://download.csdn.net/detail/jmc601/7499473

 

 

0 0