0

我的收据验证服务器已成功使用购买状态 API ( https://developers.google.com/android-publisher/v1_1/inapppurchases/get ) 来验证 IAP 收据,但响应缺少 developerPayload。

几个月来,我一直在使用相同的 API 和相同的服务器代码,而且我总是得到 developerPayload。截至 2014 年 3 月 12 日,它已丢失。

我的回复:

{
  "kind": "androidpublisher#inappPurchase",
  "purchaseTime": "1394819545343",
  "purchaseState": 0,
  "consumptionState": 1
}

预期的:

{
  "kind": "androidpublisher#inappPurchase",
  "purchaseTime": long,
  "purchaseState": integer,
  "consumptionState": integer,
  "developerPayload": string
}

任何想法为什么开发人员有效负载可能会丢失?

编辑:这是我的服务器日志中具有开发人员有效负载的最后一个订单:

{
 "kind": "androidpublisher#inappPurchase",
 "purchaseTime": "1394658352037",
 "purchaseState": 0,
 "consumptionState": 1,
 "developerPayload": "cb9e60a2-1714-434c-ba40-e144f89a7e9f"
}

该订单上的日期是 {3/12/2014 9:05:52 PM}

4

2 回答 2

0

我观察到了同样的行为,但今天它开始起作用了。请再检查一次。Google 似乎正在试验 API,在此期间,我观察到

  • 第一次验证返回开发负载(在消费之前)。但后来的没有。

  • 消费后购买时间发生变化。早些时候,订单的购买时间保持不变。

  • API 返回 400 (GoogleJsonResponseExeption (Invalid value) 用于取消(消费)购买。之前,它曾经返回 purchaseState : 1 用于取消(和消费)一段时间。

所以,我目前只是第一次使用它(在接受订单之前)。之后它的行为似乎不一致(我必须手动处理取消:-()

于 2014-03-18T18:09:57.597 回答
0

它又开始工作了。显然这是一次服务中断。

于 2014-03-27T21:57:15.680 回答