用Apktool获取别人APP中的图片及布局资源进行学习

本文介绍了如何使用Apktool工具反编译Android应用,以获取APP中的图片和布局资源,便于学习。通过解压缩APK,然后使用Apktool将XML编译后的代码还原为可读的布局文件。此外,还提到了如果想查看Java源码,可以结合dex2jar和jd-gui工具进行操作。

当我们看到一款UI布局很漂亮的APP,想要了解别人是怎么实现的时候,就可以通过Apktool工具来反编译别人的apk,从而获取图片及布局资源来进行学习。


其实我们下载到的Android 应用,是可以直接把后缀名改成zip的,然后解压zip就可以得到对应的文件目录


其中,res为所有资源文件,META-INF为签名信息,classes.dex为java源码编译后生成的字节码。

原以为这样轻松的就可以拿到别人的布局源码了,实则不然,点开res/layout下的一个布局文件看看




然后发现里面都是XML文件经过编译的机器码。那么怎么获取别人的布局文件呢?这时,Apktool就派上用场了。


首先下载安装Apktool:

下载地址:http://ibotpeaches.github.io/Apktool/install/


下载对应版本

1.将wrapper script右键选择连接另存为得到apktool.bat文件, 

2.在https://bitbucket.org/iBotPeaches/apktool/downloads下载最新版本的apktool.jar包如现在最新的apktool_2.1.0.jar,并删除版本号重名名为apktool.jar

3.将apktool.bat、apktool.jar、及想要编译的apk文件放在同一文件夹下

4.通过cmd进入对应目录运行apktool.bat   d  -f    [apk文件 ]   [输出文件夹]就可以得到相应的布局资源文件了,截图如下



这时打开res下的文件目录会发现有很多abc及notfication开头的文件,这些文件是自动生成的,并不是开发者真正写的布局文件,我们需要看的是其他xml文件,如黄色部分。


点开就可以看到相应的xml布局源码了



如果想要看别人java源码,学习别人功能的实现的话,就要用到dex2jar及jd-gui了,

其中dex2jar可以将apk改成zip加压后得到的classes.dex文件反编译成jar文件。

jd-gui:可以查看dex2jar转换出来的jar文件,就是我们想要的java源码了。


想看详细用法的可以参考:Android APK反编译详解


转载请注明出处:http://blog.csdn.net/fzw_faith/article/details/51188815

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值