android应用内购买API 3

时间:2013-04-20 14:07:18

标签: android in-app-billing

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

但我需要在几个Activities内与结算系统进行互动。在每个中定义IABHelper m_helper;是否很酷?我怀疑没有。如果我仅在我的根活动中定义它,我如何从次要活动中访问它?此外,看看这样的场景:

  1. 启动应用
  2. 根活动启动和结算系统(IABHelper m_helper)设置。
  3. 转到辅助活动。现在我可以访问(以某种方式)根活动m_helper,因为根活动尚未被销毁。
  4. 按主页按钮
  5. 推出数百万款酷炫Android应用。
  6. 返回我的应用。辅助活动醒来,但Root在第5步被Android杀死。我无法访问m_helper
  7. 我缺少一些Android概念吗?

1 个答案:

答案 0 :(得分:1)

IABHelper提供了将Activity与结算Service相关联的便捷方法。它不是全局连接,因此您当然可以为每个需要读/写帐单信息的Activity创建一个。

但是,请确保您只为每个活动致电m_helper.setup(this)一次(通常位于onCreate的{​​{1}})。同样,每Activity只调用m_helper.dispose()一次(通常采用Activity方法)。