Android 应用内结算。何时取消注册 ResponseHandler?

2024-03-04

我们一年前实现了应用内结算,按照文档中的示例代码没有出现任何问题。几周前,我们注意到用户抱怨没有收到他们的物品。在调试代码时我们发现下面这句话才是问题的根源:

/**
 * Called when this activity is no longer visible.
 */
@Override
protected void onStop() {
    super.onStop();
    ResponseHandler.unregister(mDungeonsPurchaseObserver);
}

在我的三星 Galaxy S 设备上,当市场屏幕出现时会调用此方法,从而清除观察者并中断整个电路。我们已将呼叫移至OnDestroy方法,现在工作正常。

这是处理问题的正确方法吗?有人经历过这个吗?


我面临着同样的问题。我在 ResponseHandler 上实现了一个队列:如果观察者为 null,我将信息放入队列;一旦添加了观察者,我就使用队列中的信息来调用它。这在我的应用程序中是有意义的,而且似乎工作得很好。

我不知道放入 onDestroy 是否是一个好主意,因为更新不可见的 Activity 的界面是没有意义的。

您的解决方案遇到任何问题吗?

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Android 应用内结算。何时取消注册 ResponseHandler? 的相关文章

随机推荐