-4

我需要从 apk 文件中提取源代码。我知道 apktool 并且已经使用过很多次。该方法的问题是提取的代码稍有更改,并且所有资源加载都具有静态值,例如加载布局。我也有 res 文件夹,但我无法确定要在哪里加载哪个布局。

我需要可靠的解决方案,该解决方案还可以使用生成的 R 提取完整的源代码。我认为这是可能的。

4

1 回答 1

1

以您想要的方式执行此操作实际上是不可能的。

原因如下:.apk是链中的最终工件:java源(.java)> java字节码(.class)> dalvik字节码(.dex)>应用程序包(.apk

您确实可以无损失地提取(类似于从 中提取.dex,因为只是zip 存档),但这不会帮助您获得相同的确切来源,因为从to然后 to的编译是不可逆的(在一般情况下)。.apk.class.jar.jar.java.class.dex

更新:即使是用于 java 字节码的现代反编译工具(如 jad)有时也无法生成有效的字节码源(发生在我身上几次),更不用说在编译过程中更加“扭曲”的 dalvik 字节码。

于 2013-07-28T17:39:53.173 回答