我已经使用版本3 API实施了Android应用内购买,并且除了我发现Google返回OLD ID FORMAT
的一些奇怪订单外,还有罚款。
为了反击检查IAP,我已将Google返回的所有已完成交易存储到我们自己的服务器,但我发现有许多orderId
格式为OLD
(无小数)。
以下是API返回的2个摘录(“xxx”/“000”是测试值):
新订单ID:
{
"orderId": "12999763169054705000.1373263420600000",
"packageName": "com.xxx.xxx",
"productId": "com.xxx.xxx.af0",
"purchaseTime": 1392983515012,
"purchaseState": 0,
"developerPayload": "xxx04392e9ca23874b14e8b31a37a05a",
"purchaseToken": "xxxszpnnyymngwxhgjozzvdv.AO-J1Oy_bJ4gBTBBmtVF21Y9yPQvUOV-XEc2HZr11ci4ToxVrDXlMQ-YJDQswSV9si7M1sls9aM282AyWAUHzsd3xXtkQ7u3RjP1aaEnAL6E3Z0Stys3-uZFop_GYZZVkRUysGXDWfhV"
}
旧订单ID:
{
"orderId": "5485197040027619000",
"packageName": "com.xxx.xxx",
"productId": "com.xxx.xxx.af0",
"purchaseTime": 1391011670305,
"purchaseState": 0,
"developerPayload": "xxx2ea5bf1a46f2636d96716cd38ca52",
"purchaseToken": "xxxcoykgagbauiwzytybkdrt.hgZjTuN55caq1yQHfeZF3HHmtx3hUAJgMZk8CnpJsCdR2NfHgCMii3t_7MnZ5NHKW0-R4_9J3XD1qumJLhzfshYaoPLj-MAr5-Gacp9_nk1E1s-9x7wF70Y"
}
我的问题:
我知道OLD格式应该只在2012年12月5日之前使用(http://developer.android.com/google/play/billing/billing_admin.html),但是,我们最近刚刚实施了IAP(2014年2月),为什么我们仍然收到许多旧订单IDS?
在我的Google电子钱包控制台中,我只找到了包含新订单ID的订单,而且我不知道在哪里可以在控制台中查看带有OLD ORDER ID的订单,我怀疑这些交易是否有效。
对于OLD订单ID,purchaseTime
总是不正确,以上面为例,我们将购买的时间记录在服务器中: 2014-02-23 06:13: 07 GMT + 8 ,当我们将“purchaseTime”(时间戳)转换为人类可读日期时,它是: 2014年1月30日00:07:50 GMT + 8 ,这不是可能因为我们尚未发布IAP。
注意: 在我们的记录中,有80%的订单包含旧订单ID。