【问题标题】:Amazon's Knowledge of Submitted apk's [closed]亚马逊对提交 apk 的了解 [关闭]
【发布时间】:2011-07-21 03:51:26
【问题描述】:

亚马逊如何知道我的 Android 应用的某些信息?

例如,他们能够确定它阻止了 UI 并因此拒绝了它。他们是如何确定它被阻塞的,是否有软件可供我检查?我问是因为我有一个相当大的应用程序并且想查明发生这种情况的位置,因为我认为在调用 UI 更改时我很小心。

亚马逊说... 您的应用程序尝试在后台线程上调用 Android Activity 生命周期方法。 Amazon DRM 不允许开发人员在后台线程上调用 Android 活动生命周期方法。有关进程和线程的更多信息,请访问:http://developer.android.com/guide/topics/fundamentals/processes-and-threads.html。此外,Android UI 工具包不是线程安全的。因此,您不能从工作线程操作您的 UI — 您必须从 UI 线程对您的用户界面进行所有操作。 Android 的单线程模型有两条规则: * 不要阻塞 UI 线程。 * 不要从 UI 线程外部访问 Android UI 工具包。

【问题讨论】:

  • 这个问题引起了很多猜测,它不适合 Stack Overflow。
  • 其实我相信你误读了投诉。问题似乎不是您阻塞了 UI 线程(尽管他们在最后提到这也是被禁止的),而是您尝试从后台使用仅 UI 线程的方法,而不将其包装在 runOnUiThread 或类似中。由于 Amazon 发布了他们自己的 Android 版本,他们可能会在生产构建中或在他们运行应用程序的特殊构建中检测到这一点,以便在部署之前进行验证。大多数谷歌风格的 Android 设备也会导致应用崩溃。

标签: java android multithreading amazon amazon-appstore


【解决方案1】:

更新:

我推测(根据您的要求 :))他们使用大量工具和脚本在 API 级别、屏幕尺寸等的大量排列中执行您提交的应用程序。

他们可能使用的一些工具:

【讨论】:

  • 好吧crackerjack,有时只是想知道事情是如何运作的。
  • 那很好,但您是在问亚马逊是如何做到的(不确定您是否可以期待超出猜测的答案),或者您如何找到解决问题的方法?
  • 我在寻找猜测。
  • 好的,我用推测更新了它,但可能不再属于 SO。
  • 最重要的是,不需要知道他们是如何发现应用程序中的问题的——作为开发人员,您只需要了解您的应用程序出了什么问题并进行修复,以及他们的投诉信息就足够了。如果您出于好奇想要做类似的事情,那么许多方法都是有趣的,但没有必要最终得到与他们使用的完全相同的方法。
【解决方案2】:

他们似乎有一个检查工具,我怀疑他们是手工做的,但我可能是错的。 当然没有帮助,我不知道在哪里可以找到它。你在亚马逊有联系的人吗?

【讨论】:

    【解决方案3】:

    这似乎是任何调试器都能捕捉到的。您甚至不需要“调试构建”。只需运行应用程序并在您在不同线程中对 UI 执行某些操作时触发,尽管它们可能会自动执行。

    哦,为了记录,他们是对的。在我知道的每个 UI 工具包中,您都希望在同一个线程中使用它。但是,有一些方法可以使用不同的线程,调用原始线程,进行更改,例如:http://android-developers.blogspot.com/2009/05/painless-threading.html

    【讨论】:

      猜你喜欢
      • 2012-12-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-11-26
      • 1970-01-01
      • 2013-03-20
      • 2023-04-06
      • 1970-01-01
      相关资源
      最近更新 更多