Chr*_*ris 53 server-side subscription in-app-purchase ios in-app
我正在尝试验证自动更新的In App购买是否已过期服务器端(不在设备上).
我正在使用Apple的Grand Unified Receipt(iOS 7风格的交易).由苹果返回的响应中包含in_app与latest_receipt_info用收据的一个数组元素.该in_appJSON元素包含LESS比收据latest_receipt_info.我期待两个元素包含相同的数字或收据.
此外,我期待该in_app元素将包含所有收据.但是,它似乎latest_receipt_info实际上包含所有收据.Apple文档似乎建议in_app用于查找最新收据.
我很惊讶地看到,latest_receipt_info因为Apple的文档声明这个元素是
"仅针对自动续订订阅的iOS 6样式交易收据返回".(不是iOS 7+).
我应该迭代哪个JSON元素来查找自动更新iOS 7样式事务的最新收据:in_app或者latest_receipt_info?
jox*_*jox 10
要验证自动更新订阅是否已过期,请检查latest_receipt_info元素。
这是当前(2017-08-09)关于in_app和latest_receipt_info元素的正式记录:
in_app在JSON文件中,此键的值是一个数组,其中包含基于输入的base-64收据数据中存在的应用程序内购买交易的所有应用程序内购买收据。对于包含自动续订订阅的收据,请检查latest_receipt_info键的值以获取最新续订的状态。
(来源)
latest_receipt_info仅针对包含自动续订的收据返回。对于iOS 6样式的交易收据,这是最新续签的收据的JSON表示形式。对于iOS 7风格的应用收据,此键的值是一个包含所有应用内购买交易的数组。这不包括已被您的应用标记为已完成的消耗品交易。
(来源)
Tah*_*eed -1
上面的文档非常清楚地说明了如何使用in_app. 请注意文档中的“下面未记录的密钥保留供 Apple 使用,您的应用程序必须忽略”行。因此,即使解码后的收据有latest_receipt_info,我们也应该忽略它。
但我同意,文档非常缺乏,这让我感到紧张。让我知道您在生产中使用 iOS 7 风格的收据验证的体验如何。
| 归档时间: |
|
| 查看次数: |
11670 次 |
| 最近记录: |