什么是反编译?
Android的程序打包后会生成一个APK文件,这个文件可以直接安装到Android手机上,因此,反编译就是对这个APK进行反编译。Android的反编译分成两个部分:
1.对源代码的反编译,也就是java文件的反编译。
2.对资源的反编译,也就是res文件的反编译。
此处只介绍对资源的反编译:
准备工作
下载所需的软件:
图片引自官网1.按照图上步骤,首先我们要右键点击脚本,选择下载链接文件为,然后保存到本地,命名为apktool,注意无后缀,因为本人刚开始不了解Mac os系统,所以没有改掉隐藏的后缀名,大家可以使用shell重命名文件
mv apktool.txt apktool
2.下载apktool.jar,选择最新版本的jar包,下载后命名为apktool.jar
3.将下载的apktool和apktool.jar移到/usr/local/bin目录下,因为Mac系统基于Unix的,/usr/local/bin目录是给用户放置自己的可执行程序的地方,推荐放在这里,不会被系统升级而覆盖同名文件,同时可在其他任意目录执行,命令如下:
$ sudo mv apktool /usr/local/bin
$ sudo mv apktool.jar /usr/local/bin
移动过程中若让你输入密码,输入后return即可,若bin目录不存在,直接创建一个就好了,先进入/usr/local目录下:
$ cd /usr/local
$ sudo mkdir bin
4.将apktool和apktool.jar的权限设为可执行:
$ sudo chmod a+x apktool
$ sudo chmod a+x apktool.jar
使用方法
到这一步,工具就应该配置好了,使用方法:
apktool d xxx.apk
这里的参数d代表的是decode的意思,就是对apk进行解码,执行完以上命令,出现如下截图,就代表反编译成功,会在同目录下生成一个同名文件夹,文件夹的内容即为反编译出来的内容!
反编译成功的截图
网友评论