如何反编译 Android Studio 生成的 Apk 文件

Posted

技术标签:

【中文标题】如何反编译 Android Studio 生成的 Apk 文件【英文标题】:How to Decompiling Apk files that Generated By Android Studio 【发布时间】:2015-04-15 06:22:59 【问题描述】:

我完全丢失了我的 android studio 项目,没有办法找回它。 现在,我正在尝试反编译我的 apk 文件以访问我的 java 类和 xml 文件。

使用 dex2jarjd-gui,我得到了我的 java 类,但没有我测试过的程序。到目前为止,我无法反编译我的 xml 文件!

apktool 显示此错误:

线程“主”brut.androlib.err.UndefinedResObject 中的异常:无法解码 arc 文件

我是否必须再次创建我的所有 xml?或者有什么办法可以反编译android studio生成的apk?

编辑:“Apk Studio”给我同样的错误,用 apktool 反编译 apk 文件。

【问题讨论】:

【参考方案1】:

要反编译 XML 文件,您可以使用以下工具:

    JadX - https://github.com/skylot/jadx Apktool - https://github.com/iBotPeaches/Apktool

请记住,您使用的apktool 可能是一个非常旧的版本。从https://github.com/iBotPeaches/Apktool/releases/download/2.1.1/apktool_2.1.1.jar下载最新版apktool.jar

以下是获取 xml 文件的两个过程。

Apktool方法:

    从https://github.com/iBotPeaches/Apktool/releases/download/2.1.1/apktool_2.1.1.jar下载最新的apktool jar 使用不带尖括号的java -jar apktool.jar d <apkfile.apk> 运行它,并将apkfile.apk 替换为apk 文件的实际路径

Jadx方法:

    从https://github.com/skylot/jadx/releases下载最新版本的jadx 解压文件,然后转到bin/文件夹 Windows 用户可以双击jadx-gui.bat 文件 Linux/Mac用户可以运行shell脚本./jadx-gui 这将打开 jadx gui,您可以通过它打开 apk 文件。

参考Jadx开启对话

【讨论】:

以上是关于如何反编译 Android Studio 生成的 Apk 文件的主要内容,如果未能解决你的问题,请参考以下文章

Android Studio编译好的apk放在哪里

如何使 Google Play 服务 API 和 Firebase API 的 API javadocs 出现在 Android Studio 中,而不是没有文档的反编译类?

android studio 反编译apk

Android Studio 自带的反编译apk工具

Android .mk文件 如何编译生成apk文件?

Android .mk文件 如何编译生成apk文件?