iOS自动续订订阅(沙盒)

时间:2013-05-24 19:44:04

标签: ios subscription in-app-purchase

我目前正在测试自动续订订阅的代码。在大多数情况下,它按预期工作。但是,有时候,我会看到意想不到的结果。

我购买了新订阅,我收到了一张收据(transaction_id = 1000000075229775)。 收到此收据后(在到期日期之前),我将此收据发送到sandbox.itunes.apple.com,它会返回一个具有不同交易ID的新收据(latest_receipt_info with transaction_id = 1000000075229779)。 我没想到在达到第一个到期日之前得到这个新收据(具有不同的交易ID)。 这是两个收据的摘录。请注意,到期日期非常接近(差异小于一秒)。

你能帮我理解发生了什么吗?

感谢。

["receipt"]=>object(stdClass)#14 (19) {
    ["original_purchase_date_pst"]=>string(39) "2012-12-03 08:20:49 America/Los_Angeles"
    ["unique_identifier"]=>string(40) "af430ef98d6bdbbf92ed34e4addec2e834bc25d6"
    ["original_transaction_id"]=>string(16) "1000000059708880"
    ["expires_date"]=>string(13) "1369421691100"
    ["transaction_id"]=>string(16) "1000000075229775"
    ["quantity"]=>string(1) "1"
    ["expires_date_formatted"]=>string(27) "2013-05-24 18:54:51 Etc/GMT"
    ["purchase_date"]=>string(27) "2013-05-24 18:49:51 Etc/GMT"
    ["purchase_date_ms"]=>string(13) "1369421391100"
    ["original_purchase_date"]=>string(27) "2012-12-03 16:20:49 Etc/GMT"
    ["original_purchase_date_ms"]=>string(13) "1354551649000"
    ...
}
["latest_receipt_info"]=>object(stdClass)#12 (19) {
    ["original_purchase_date_pst"]=>string(39) "2012-12-03 08:20:49 America/Los_Angeles"
    ["unique_identifier"]=>string(40) "345fade172e62c805d0d354edda97575fc9b9d50"
    ["original_transaction_id"]=>string(16) "1000000059708880"
    ["expires_date"]=>string(13) "1369421691000"
    ["transaction_id"]=>string(16) "1000000075229779"
    ["quantity"]=>string(1) "1"
    ["expires_date_formatted"]=>string(27) "2013-05-24 18:54:51 Etc/GMT"
    ["purchase_date"]=>string(27) "2013-05-24 18:49:51 Etc/GMT"
    ["purchase_date_ms"]=>string(13) "1369421391000"
    ["original_purchase_date"]=>string(27) "2012-12-03 16:20:49 Etc/GMT"
    ["original_purchase_date_ms"]=>string(13) "1354551649000"
    ...
}
["status"]=>int(0)

1 个答案:

答案 0 :(得分:1)

查看original_transaction_id,不要担心transaction_id。在某些情况下,您可能会获得不同的transaction_id(例如:恢复购买时)。我不认为有关transaction_id何时可能发生变化的所有细节都记录在案。

根据Apple关于自动续订订阅的文档(此处:https://developer.apple.com/library/mac/#documentation/NetworkingInternet/Conceptual/StoreKitGuide/RenewableSubscriptions/RenewableSubscriptions.html#//apple_ref/doc/uid/TP40008267-CH4-SW2):

  

original_transaction_id - 保存事务标识符   最初的购买。此订阅的所有后续续订和   恢复的交易都共享此标识符。

此ID将始终反映最初进行购买的交易ID。