【问题标题】:Decompiling Android apk [closed]反编译Android apk [关闭]
【发布时间】:2012-06-14 08:20:41
【问题描述】:

我已经编译了 android 应用程序(.apk 文件)。 我想改变它,在开始之前显示启动画面。 我可以在没有任何源代码的情况下执行此操作吗?

【问题讨论】:

  • 反编译一个 apk 比修改源代码后创建另一个 apk 更耗时。
  • @user1092042 这样的说法通常只是借口不说“我从我的竞争对手那里偷了这个应用程序”
  • "或者我的客户正在这样做"))
  • 首先;您是否有权从其创建者那里修改应用程序?如果是这样,您可能最好直接询问来源。

标签: android reverse-engineering


【解决方案1】:

不是真的。

反编译不是一个直接的过程。您在编译过程中丢失了大量信息(变量名被丢弃,cmets 被丢弃,等等......)。对于安卓:

  • APK 只是一个包含一组类和资源的 zip 文件。
  • 这些类被编译成一个.dex 文件。
  • .dex 文件包含的代码有点像 Java 虚拟机代码。
  • 您可以使用工具dex2jar 将dex 转换为jar。
  • 完成此操作后,您可以简单地使用 Java 反编译器。

但是,正如您最初的问题所问的那样,以这种方式修改代码基本上是不可能的,会产生一堆无法维护的可怕代码。你也需要很长时间才能做到这一点,部分理解反编译代码的工作原理(因为不会有任何 cmets 或中间变量名),然后修改它......

【讨论】:

    【解决方案2】:

    this question.

    首先,apk 文件只是一个修改后的 jar 文件。所以真正的问题是他们能不能反编译里面的dex文件。答案有点像。

    因此,如果您只是修改了用于编译 .APK 的源代码,那将是最简单的

    【讨论】:

      猜你喜欢
      • 2019-12-17
      • 2015-10-26
      • 2014-02-07
      • 1970-01-01
      • 2014-01-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多