Android应用内计费版本3 - 商品未拥有

7
我遇到了一个关于IAB V3的问题,购买物品时,中断网络(或立即进入飞行模式)后重新购买该物品,会提示“您已拥有此物品”。我尝试了许多方法:清除Google Play缓存/强制关闭Google Play/强制关闭游戏/重启设备/切换到另一台设备/等待几天,但这些方法都没有用。我在Google上搜索了很多,但没有类似的情况...大多数情况都是通过清除缓存或不调用consume解决的。

有时,Google Play会显示“物品已经拥有”。

有时,在查询库存时,我看到了那件物品,但当我尝试消耗它时,返回错误8:未拥有该物品(响应:8:未拥有该物品)。

这真的很糟糕,除非使用另一个帐户,否则我无法再次购买该物品。

这个问题真的很难复现,但一旦发生,你就无能为力...

我不知道如何调试下一步。我认为这可能属于Google库本身。注意:我的库代码与TrivialDrive应用程序非常相似。

谢谢你的建议。


有没有人对此有解决方案?我现在被这个问题困扰了将近一周... - user1866128
你好,有什么解决方案吗? - user1866128
有没有解决方案?我也遇到了这个冲突。 - portfoliobuilder
1个回答

0

响应错误: 7和响应错误: 8 "物品已经拥有"和"物品已购买"来自Google Play服务。一旦购买流程完成,我们需要使用以下方法进行消耗。

mHelper.consumeAsync(inventory.getPurchase(SKU_GAS), mConsumeFinishedListener);

但是,如果您已经购买并且遇到此问题,则需要清除Google Play服务的缓存数据,然后使用consumeAsync进行测试。


3
我总是试图在库存中有物品时调用consumeAsync以消耗该物品。 但问题是有时它不可用,有时它可用,但在调用consume时,Google会返回错误代码8:ITEM not OWNED。 所以情况还是一样的...我已尝试清除Google Play服务缓存,但对我没有用。 - user1866128

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接