4

Google Play v3 API 的 IInAppBillingService.getSkuDetails() 方法返回缓存的结果。

让我们看一下这个场景:

  1. 我在 Google Play 控制台中有一个名为 com.my.item 的商品,价格为 1 美元
  2. 我运行我的游戏,调用了 IInAppBillingService.getSkuDetails(),实际上我得到了 1 美元的价格。
  3. 现在我返回 Google Play 控制台并将价格更改为 2 美元
  4. 我再次运行我的游戏,调用 (2) 中的方法,仍然得到 1 美元。

观察:

  1. Google Play 购买活动确实显示了正确的价格(2 美元)
  2. 等待一段时间(大约 2 小时)无济于事。
  3. Google Play 应用程序上的清除数据可解决此问题。
  4. 我们使用最新的 Google Play 版本在 Galaxy Nexus (4.3)、三星 Galaxy S3 (4.1.2) 上进行了测试。

有人遇到过这个问题吗?

谢谢,马克斯。

4

2 回答 2

6

它缓存在手机上。只需清除手机的谷歌播放缓存(从设置中)

于 2013-11-28T08:14:26.473 回答
5

目前,无法以编程方式使缓存无效,因此您将从 getSkuDetails() 获得旧结果,直到 Google Play 的缓存刷新,如果网络连接良好,这通常应该每 24 小时发生一次。

你报告说你等了几个小时,所以这在预期之内。您能否尝试等待〜24小时,看看缓存是否更新?如果它得到更新,那么它按预期工作。如果不是,那么还有其他问题 - 可能 Google Play 无法在该设备上进行自我更新。

于 2013-10-23T17:57:30.757 回答