0
点赞
收藏
分享

微信扫一扫

Android反编译工具ApkTool的使用

功能:拆解Apk文件,反编译其中的资源文件,将它们反编译为可阅读的AndroidManifest.xml文件和res文件。前面讲过,直接把Apk文件当做zip解压,得到的xml资源文件,都是无法直接用文本编辑器打开阅读的,因为它们在打包时经过了build-tools的处理

下载和安装步骤链接:​​https://ibotpeaches.github.io/Apktool/install/​​

下面我来汉化一下:

安装步骤

点击以上链接,看Installation for Apktool中的windows中步骤

  1. 首先右键1中的wrapper script,然后另存为​​apktool.bat​​​Android反编译工具ApkTool的使用_android
    我们会得到一个
    Android反编译工具ApkTool的使用_android_02
  2. 我们点击步骤2中链接下载一个2.4.0的版本
    Android反编译工具ApkTool的使用_android_03
  3. 重命名这个jar为​​apktool.jar​​​Android反编译工具ApkTool的使用_apktool_04
  4. 把​​apktool.jar​​​和​​apktool.bat​​​移动到Windows文件夹,通常是​​C:\Windows​

使用教程

官方使用教程:​​https://ibotpeaches.github.io/Apktool/#​​

打开cmd,进入自己app所在文件夹,执行​​apktool d app名称.apk​​​Android反编译工具ApkTool的使用_apktool_05
等一会儿会执行成功
Android反编译工具ApkTool的使用_反编译_06
同时app所在文件夹会出现一个和app同名的文件夹
Android反编译工具ApkTool的使用_apktool_07

注意:如果把apk和apktool.jar同样放在windows下可能会遇到坑: apktool报错:file must be a directory

打开新增的文件夹
Android反编译工具ApkTool的使用_反编译_08
我们已经得到一个可以用文本编辑器打开的阅读的AndroidManifest.xml文件、assets文件夹、res文件夹、smali文件夹等等
original文件夹是原始的AndroidManifest.xml文件
res文件夹是反编译出来的所有资源
smali文件夹是反编译出来的代码
注意,smali文件夹下面,结构和我们的源代码的package一模一样,只不过换成了smali语言。它有点类似于汇编的语法,是Android虚拟机所使用的寄存器语言

这时,我们已经可以文本编辑器打开AndroidManifest.xml文件和res下面的layout文件了。这样,我们就可以查看到这个Apk文件的package包名、Activity组件、程序所需要的权限、xml布局、图标等等信息。其实我们把Apk上传到应用市场时,应用市场也会通过类似的方式解析我们的apk

举报

相关推荐

0 条评论