Android In App Billing Restore Transaction

时间:2011-12-11 16:55:07

标签: android in-app-purchase

我的In App Billing实施方案: 1.主屏幕显示我计划销售的产品列表。 2.详细信息屏幕(在主屏幕中选择列表项目时显示的屏幕)可以选择购买该产品。

我的理解是,还原事务请求和检查是否支持InAppBilling的请求必须在主屏幕活动中完成。其余请求(开始购买等)应在详细屏幕活动上完成。这种理解是否正确?

如果是,我应该如何修改Dungeons示例以分离并实现主屏幕活动,这两组请求,我每次导航到详细屏幕活动时都不需要这样做。我是否必须在这两项活动中创建购买观察员和相关课程的单独实例?

2 个答案:

答案 0 :(得分:4)

恢复交易不应经常进行,可能只在应用首次运行时进行(因此,如果用户重新安装应用程序,您可以恢复购买等)。购买产品时不需要它。

BillingService提供了请求购买和恢复交易的单独方法。只需从相关活动中拨打相应的一个即可。您只需要一个购买观察者,无论UI /活动的结构如何。

答案 1 :(得分:0)

在Dungeons示例中,如果您发出RESTORE_TRANSACTION请求,服务器的响应将首先调用此函数:

onPurchaseStateChange(PurchaseState purchaseState,String itemId,int quantity,long purchaseTime,String developerPayload)

然后: onRestoreTransactionsResponse(RestoreTransactions request,ResponseCode responseCode)