apktool 反编译 APK 获取资源
在 Android 反编译 APK 获取资源 我们说过通过解压 .apk
的方法查看 xml 和 Java 代码都是乱码的,所以我们必须使用另外一个工具 apktool 来获取 .apk
里的资源
apktool
apktool 是一个反编译 Android apk 应用的工具,官网地址为 https://ibotpeaches.github.io/Apktool/
下载安装 apktook
-
下载安装 apktook 有点复杂,所以我们建议你下载我们配置好的 apktool.zip
-
将下载好的文件解压到
d:\dev\apktool
目录下 -
右键点击 我的电脑,单击 属性 ,然后点击左侧的 高级系统设置,在弹出的窗口中点击右下角的 环境变量,打开 环境变量 设置对话框
-
编辑 系统变量(S) 里的 Path 添加
d:\dev\apktool
使用 apktool 反编译 APK 获得图片与 XML 资源
-
打开命令提示符,跳转到我们 Android 反编译 APK 获取资源 章节中存放 xiuxiu.api 的目录
d:\dev
-
然后输入 apktool.bat d xiuxiu.apk 后按下回车键,漫长的等待之后,就可以看到编译完成了
-
在文件管理器中打开
d:\dev\xiuxiu
目录,可以看到和解压的不大一样,但 res 目录很清晰的存在着同时我们也看到 .dex 文件变成了目录,不过是
.smali
格式的了,如果要将.smali
解码为 Java 代码,需要另外的工具,我们就不多说了 -
打开
res/layout/activity_login.xml
可以发现能正常显示了<?xml version="1.0" encoding="utf-8"?> <RelativeLayout android:layout_width="fill_parent" android:layout_height="fill_parent" xmlns:android="http://schemas.android.com/apk/res/android"> <FrameLayout android:id="@id/frame_layout" android:layout_width="fill_parent" android:layout_height="fill_parent" /> </RelativeLayout>
这么简单的布局?