ChatGPT解决这个技术问题 Extra ChatGPT

如何在 Android 平台上反编译 APK 或 DEX 文件? [关闭]

关闭。此问题不符合 Stack Overflow 准则。它目前不接受答案。我们不允许提出有关书籍、工具、软件库等建议的问题。您可以编辑问题,以便可以用事实和引用来回答它。 7年前关闭。改进这个问题

是否可以在 Android 平台上反编译 APK 包或 DEX 文件?有没有可以反编译APK文件的工具?

您是指以编程方式吗?
此链接包含您需要的所有答案。 stackoverflow.com/questions/12732882/…
Play商店里有很多有人可以搜索它..

C
Community

decompile an APK 文件需要三个工具。

Dex2jar - 使用 android .dex 和 java .class 文件的工具 ApkTool - 一个逆向工程 Android apk 文件的工具 JD-GUI - Java Decompiler 是一个反编译和分析 Java 5“字节码”及更高版本的工具。

更多how-to-use-dextojar。希望这对您和所有人都有帮助! :)


我认为所有这些工具都运行在 Windows 平台上。我可以将这些jar文件导入我的android项目然后在android平台上运行吗
Rupesh Yadav@ 在此过程中,某些行代码与原始代码不匹配。 www.decompileandroid.com/ from this web 我可以反编译我的代码,但两个代码不同,为什么?
@Shailendrsingh 以上是反编译 APK 的标准过程,如果在应用程序中启用混淆,反编译的类代码可能会有所不同。
好的,如果在应用程序中启用了混淆。我怎样才能获得在应用程序中编写的原始代码?
@Shailendrsingh 只有在您拥有反向映射文件时才有可能,否则无法从 APK 文件中获得 100%。
B
B M

在线 APK 反编译器
http://www.decompileandroid.com/
https://www.decompiler.com/
适用于 Windows 的 APK 反编译器应用程序
http://forum.xda-developers.com/showthread.php?t=2493107

2015/12/04 更新
ClassyShark 您可以打开 APK/Zip/Class/Jar 文件并分析其内容。 https://github.com/google/android-classyshark

2021 年 1 月 28 日更新
https://ibotpeaches.github.io/Apktool/
https://github.com/skylot/jadx


不幸的是,DecompileAndroid 不能正确反编译 strings.xml
ProGuard 完全删除了 R$string.class,但 Android 反编译器可以从 resources.arsc 重建所有信息。我认为这个 DecompileAndroid 还没有实现这种复杂的功能
感谢更新,jadx 似乎工作,虽然导出似乎不起作用,所以我无法在 Android Studio 中打开项目
d
dirkvranckaert

我创建了一个结合 dex2jar、jd-core 和 apktool 的工具:https://github.com/dirkvranckaert/AndroidDecompiler 只需在本地签出项目并按照文档运行脚本,您将获得所有资源和源代码的反编译。


C
Community

APK 只是 zip 格式。您可以像任何其他 .zip 文件一样解压缩它。

您可以使用 Android SDK 中提供的 dexdump 工具反编译 .dex 文件。

有关更多 dex 信息,请参阅 https://stackoverflow.com/a/7750547/116938


“一个 APK 只是 zip 格式”,没错,但包括 AndroidManifest.xml 在内的许多文件都无法正确解压缩并且无法读取...
V
Vladimir Panteleev

http://www.decompileandroid.com/

本网站将反编译 APK 文件中嵌入的代码并提取文件中的所有其他资产。


非常好的网站!我用了一年。还有另一种选择:javadecompilers.com/apk,它使用不同的方法(Jadx 而不是 Dex2jar + Jad)
@JqueryNinja 检查此替代 - stackoverflow.com/a/27981520/3879847
@RanjithKumar javadecompilers.com/apk 在排队等待很长时间后,该网站确实反编译了我的 apk。但是,缺少一些 java 类。难道没有其他选择吗?
@JqueryNinja 使用 showjava apk。这比其他的要好。但广告更多.. play.google.com/store/apps/details?id=com.njlabs.showjava
@RanjithKumar showjava 使用 javadecompilers.com/apk 或 jadx 不反编译所有 java 类
U
Ultimo_m

您可以使用以下方法在 Android 设备上反编译 apk:https://play.google.com/store/apps/details?id=com.njlabs.showjava

有关详细信息,请查看此处:http://forum.xda-developers.com/showthread.php?t=2601315

编辑:28-02-2015

要反编译 apk,您可以使用此工具:https://apkstudio.codeplex.com/license

如果这无济于事,请检查此link


该应用程序从未对我有用。它无限尝试执行“反编译为java”,它们通常会崩溃..
那么你应该遵循这个答案stackoverflow.com/a/23924665/2736039这些解决方案效果很好
该解决方案还有另一个问题 - 请参阅我的评论;)
我知道这个问题并解决我使用 Apk 工具。据我所知,您找不到可以完成所有工作的工具。你必须全部使用它们:)
检查我编辑的答案我找到了一个新工具
m
mostar

您还可以使用 apktool: http://ibotpeaches.github.io/Apktool/,它还会为您提供 xml res 文件。除此之外,您还可以使用 dex2jar 系统,它将 apk 中的 dex 文件输出到可以用 JD-GUI 打开并导出为标准 java 文件的 jar 文件。


t
trueblue

您也可以使用 Android Multitool。您可以在应用程序中进行细微更改,例如隐藏 GUI 元素或修改 Logic 的一小部分并重建 apk。它易于使用和反编译/重新编译 apk 和 jar 文件。这是您可以结帐的Link

干杯