2

问题

我正在尝试在应用计费 v3 中实现,除了一件事之外,一切都很好。消费或购买商品后,我会拨打请求电话以更新库存。但是结果总是产生旧的库存而不是新的库存,添加或删除的项目。

这可能是预期的行为,我确实有一个解决方法,但它仍然很烦人。

解决方法

我的工作存在于应用内计费的特殊“处理程序/包装器”中。这个“处理程序”有一个简单的生命周期。

1. create(新调用):创建一个新IabHelper对象并使用公钥做一些魔术

2. startUp:调用startSetup方法,IabHelper成功时设置一个标志。如果成功,它会进行更新库存调用。

3.close :销毁IabHelper对象

处理程序实现该onQueryInventoryFinished方法,当调用此方法并且结果为成功时,使用此方法提供的 Inventory 参数更新本地 Inventory 对象。

所以基本上我制作的处理程序有两个字段,一个 Inventory 和一个用于成功设置的标志。例如,处理程序还具有用于回调活动的自定义接口。

还有两种方法:buy and consume.

成功购买或消费商品后,我想更新当前库存,但这不像之前所说的那样工作。

我的解决方法:从本地 Inventory 对象中手动删除或添加购买。(这应该在购买或消费方法中完成。)

更好的方法?

有没有更好的“更容易接受”的方式来做到这一点?

4

0 回答 0