Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/213.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 安卓消耗品:“;已经拥有该物品”的;但是inventory.hasPurchase()为false_Android_In App Purchase - Fatal编程技术网

Android 安卓消耗品:“;已经拥有该物品”的;但是inventory.hasPurchase()为false

Android 安卓消耗品:“;已经拥有该物品”的;但是inventory.hasPurchase()为false,android,in-app-purchase,Android,In App Purchase,我在应用程序v3中被谷歌困住了——我在没有消费的情况下测试了一次购买(例如,当应用程序在购买和消费之间崩溃时)——现在我找不到出路 如果我再次尝试购买,它会显示“您已经拥有该商品”。但当我测试所有权时,它说我不拥有它: Inventory inv = mHelper.queryInventory(false, null); inv.getPurchase(sku); // null inv.hasPurchase(sku); // false 我也不能消费一些东西,因为我没有要消费的东西。这里

我在应用程序v3中被谷歌困住了——我在没有消费的情况下测试了一次购买(例如,当应用程序在购买和消费之间崩溃时)——现在我找不到出路

如果我再次尝试购买,它会显示“您已经拥有该商品”。但当我测试所有权时,它说我不拥有它:

Inventory inv = mHelper.queryInventory(false, null);
inv.getPurchase(sku); // null
inv.hasPurchase(sku); // false
我也不能消费一些东西,因为我没有要消费的东西。这里怎么办

编辑
按如下方式复制:购买应用内耗材,然后禁用互联网连接。在此之后,您在几个小时内无法再次购买该产品。我刚刚用play store(Diamond Digger Saga)的一款流行应用程序进行了测试,我的行为也完全一样。真的没有可能避免/解决这个问题吗?

我遇到了这个问题。我在手机上有两个谷歌账户,一个是开发者账户(我愚蠢地使用了我的个人账户),另一个是我在开发者控制台注册的测试账户。我已经从我的手机账户中删除并重新添加了开发者账户,这使我能够从我的应用程序中进行测试购买,我认为如果开发者账户是这个列表中的第二个,它将使用第一个进行购买


唉,在应用程序运行了几次之后,我遇到了你的问题。我放弃了两者的尝试,并从手机中删除了开发者帐户。虽然非常不方便,但这解决了这个问题,并允许我测试购买、消费、查询等。

如果您做的一切都正确并且代码正常,那么问题很可能出现在缓存的Google Play Services数据中

例如,当您在设备a上进行测试购买时-在设备B上(使用相同的Google帐户登录),您将在一段时间内继续收到未购买的
库存。您的
inventory.getPurchase(sku)
将返回
null
,而
inventory.hasphase(sku)
将返回
false

要解决此问题,请尝试使用“最近的应用”按钮打开并关闭Google Play(单击它,然后将应用刷走),这将比通常的“后退”按钮更快地终止应用。然后关闭设备几分钟

我们的目标是让Google Play更新其缓存

确保您使用的是wifi,因为如果您使用的是移动数据,它可能很少更新。 最终数据将被更新,您将获得您的购买。
在我的情况下,它发生在5分钟后或smth

您是否使用正在测试应用程序的google帐户登录到Android设备?是-我需要登录到该帐户才能从play storeTry中的beta tester加载应用程序,其库存inv=mHelper.queryInventory(true,列出的SKU);?完全一样的问题…完全一样。我可以在dome时间后(或删除play store的缓存后!)再次购买,例如钻石挖掘传奇和我的应用程序。