0

我试图弄清楚如何在包含十几个活动的应用程序中实现应用程序内购买。主要问题是在哪里放置IABHelper m_helper;对象?一切都很简单,以防单活动应用程序(例如示例“android-sdk\extras\google\play_billing\samples\TrivialDrive\src\com\example\android\trivialdrivesample”)。

但我需要从几个Activities. IABHelper m_helper;在每个人中定义 a 很酷吗?我怀疑没有。如果我只在我的根活动中定义它,我如何从辅助活动中访问它?此外,看看这样的场景:

  1. 启动应用程序。
  2. 根活动启动和计费系统 ( IABHelper m_helper) 设置。
  3. 进入次要活动。现在我可以(以某种方式)访问根活动m_helper,因为根活动还没有被破坏。
  4. 按主页按钮
  5. 启动一百万个酷炫的 Android 应用程序。
  6. 返回我的应用程序。次要活动唤醒,但 Root 在第 5 步被 Android 杀死。我无法访问m_helper.

缺少一些 Android 概念吗?

4

1 回答 1

1

IABHelper提供连接Activity到帐单的便捷方法Service。它不是一个全局连接,因此您当然可以为每个Activity需要读取/写入计费信息的连接创建一个。

但是,请确保您只m_helper.setup(this)为每个 Activity 调用一次(通常在onCreatefor that 中Activity)。同样,每次只调用m_helper.dispose()一次Activity(通常在onDestroy方法中)。

于 2013-04-20T15:03:23.477 回答