【发布时间】:2020-12-26 06:17:46
【问题描述】:
Apple states 对于某些订阅事件,它们会触发多个通知。假设我想知道用户是否取消了他们的订阅,以便我可以为他们提供另一个更便宜的选择。
我可以听DID_CHANGE_RENEWAL_STATUS 确定他们何时关闭自动续订。但是,有一个问题——如果用户升级到另一个 SKU,则会触发相同的通知。事实上,根据他们的文档,它会触发三个通知:CANCEL、DID_CHANGE_RENEWAL_STATUS、INTERACTIVE_RENEWAL。
我想区分这些场景。显然,由于这些是异步操作,因此无法保证到达的顺序。但是,我想知道我是否可以期望所有三个通知都会以相同的unified_receipt 到达?如果是这样,我可以收听DID_CHANGE_RENEWAL_STATUS 通知,检查unified_receipt,如果我发现我的用户没有注册其他产品,我可以为他们提供另一个订阅选项。
但是,文档没有提到 Apple 是否保证在发送多个通知的情况下,所有通知都会以相同的unified_receipt 到达。这将是合乎逻辑的......但将notification_type 设为一个数组以简化事情也是合乎逻辑的。而且,鉴于 Apple 还没有这样做,我担心我们不能期望 unified_receipt 对于连续的通知是相同的。
有没有人有这方面的经验可以分享一下?
【问题讨论】:
标签: ios in-app-purchase webhooks auto-renewable server-to-server