Android反编译工具与反编译步骤及常见问题

本文介绍了Android反编译过程,使用apktool、dex2jar和jd-gui工具进行资源文件和源代码的反编译。首先,通过apktool反编译资源文件,然后利用dex2jar转换dex为jar,最后通过jd-gui查看反编译的Java代码。在反编译过程中注意版本兼容性问题。

Android代码混淆很大程度上就是为了别人反编译我们的代码,用反编译工具也可以测试我们的代码是否混淆成功。

“工欲善其事,必先利其器”,先介绍一下反编译的工具:

apktool、dex2jarjd-gui,这里是下载链接:Android反编译工具集

大概的用法与步骤是:用apktool可以获得apk中的资源文件,用dex2jar可以获得apk中包含java代码的jar包,通过jg-gui可以打开jar包中的java代码。

反编译开始:

一、反编译资源文件

         解压工具包,打开apktool文件夹,看到下图文件:

                                 

         将需要反编译的.apk文件也放在这个文件夹里,打开命令行界面(cmd),定位到apktool文件夹(用cd命令)

         接着输入命令:apktool  d  -f test.apk(这里是需要反编译的apk的名字) -o testfile(这个是反编译出的资源文件需要存放的文件夹的名字)

          注:此处有一点需要注意,网上有说输入命令:apktool.bat d -f test.apk test的,但是运行之后会提示错误:input file was not found or was not readable,这是因为版本原因导致的报错,用上面的apktool工具和命令,就不会出现这种情况了。

           运行结束后, 再来看文件夹,会发现多了一个testfile文件夹,里面有反编译出的资源文件。

                               

                               

                                 

二、反编译源代码

           打开压缩文件后,找到里面的dex2jar-0.0.9.15文件夹。

  将需要反编译的apk文件后缀名改为.rar或.zip,解压获得一个文件夹, 打开这个文件夹

                                

 将文件夹里面的classes.dex复制到dex2jar-0.0.9.15文件夹中。

 在命令行定位到dex2jar.bat所在目录,输入dex2jar.bat classes.dex,运行

                          

 运行结束后,会发现原本的目录下多了一个classes_dex2jar.jar文件

                             

 打开jd-gui-0.3.5.windows文件夹,运行里面的jd-gui.exe

                         

 在菜单栏File里打开刚才生成的classes_dex2jar.jar文件。

                    

 就能得到apk中的java文件了。

                      

                



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值