【问题标题】:Can I use Self-Modification in Android?我可以在 Android 中使用自我修改吗?
【发布时间】:2014-08-01 05:31:28
【问题描述】:

当我阅读 Google play policy 时,我对这句话有疑问。

从 Google Play 下载的应用不得使用 Google Play 更新机制以外的任何方法修改、替换或更新自己的 APK 二进制代码。

这意味着开发者不能使用自修改代码??

例如,当用户第一次运行我的应用程序时,我的应用程序会修改其二进制代码。

如果我使用它,我可以使用自修改代码上传我的应用程序吗??

【问题讨论】:

    标签: android self-modifying


    【解决方案1】:

    虽然政策不允许,但如果 Google 没有检测到我们在做什么,我们是安全的。

    有几种方法可以动态加载二进制代码 AKA DEX file。所以在运行时你下载更新的 dex 文件并运行它。这是相当有名的。你可以在这里找到一些信息http://android-developers.blogspot.sg/2011/07/custom-class-loading-in-dalvik.html

    Facebook 应用确实使用动态类加载,因为其代码中的方法数量超过 64K,因此他们必须将代码拆分为多个 dex 文件并在运行时动态加载。因此,如果 Facebook 可以,那么我想我们也可以继续前进。

    Facebook 的以下博客陈述了他们面临的问题以及他们如何解决问题https://m.facebook.com/notes/facebook-engineering/under-the-hood-dalvik-patch-for-facebook-for-android/10151345597798920

    【讨论】:

      猜你喜欢
      • 2011-01-14
      • 1970-01-01
      • 2020-01-02
      • 2020-02-01
      • 2013-02-20
      • 2019-01-30
      • 2011-11-13
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多