【问题标题】:Apple iOS Inapp purchase Server to Server Notifications' 'Cancel' notification cases?Apple iOS 应用内购买服务器到服务器通知的“取消”通知案例?
【发布时间】:2019-10-14 18:39:51
【问题描述】:

我们一直在沙盒环境中反复测试 In App purchase Server to Server 通知。 Apple 的文档 here 声明 Cancel 类型通知:

表示订阅已被 Apple 客户支持或在用户升级订阅时被 App Store 取消。 cancel_date 键包含取消或升级订阅的日期和时间。

因此,当我们从订阅组执行产品升级时,我们应该收到Cancel 通知,但我们却收到了INTERACTIVE_RENEWAL?这是因为我们在沙盒环境中进行测试。我们是否在生产中获得了CANCEL,如果是,我们是否还应该期待另一个INTERACTIVE_RENEWAL 在生产中。

【问题讨论】:

    标签: ios in-app-purchase in-app in-app-subscription


    【解决方案1】:

    如果订阅已由 Apple 支持部门退还,您只会收到 CANCEL 通知。您应该期待 INTERACTIVE_RENEWAL 升级事件。

    【讨论】:

    • 没错,这就是我所观察到的。但是 Apple 的文档明确提到,对于升级,CANCEL 也应该出现。你有同样的支持证词吗?另外,我只在 Sandbox 中进行了测试,不确定生产中是否会有不同的行为。
    • WWDC 2019 在他们的一个演示文稿中提到,如果升级,您应该期待两个通知 CANCELINTERACTIVE_RENEWAL
    【解决方案2】:

    这是因为我们在沙盒环境中进行测试。我们是否在生产中获得了 CANCEL,如果是,我们是否还应该期待另一个 INTERACTIVE_RENEWAL 在生产中。

    正确。此行为是由于 Sandbox env 造成的。 在生产中,您会同时收到通知。

    来自 Apple 文档: CANCEL - 表示当用户升级订阅时,Apple 客户支持或 App Store 取消了订阅。 cancel_date 键包含取消或升级订阅的日期和时间。

    https://developer.apple.com/documentation/storekit/in-app_purchase/enabling_server-to-server_notifications

    【讨论】:

      【解决方案3】:

      如果您今天查看 CANCEL (20210404) 的文档,您会看到 CANCEL 通知不再提及升级时发送的部分。他们更改了文档(我想也更改了行为),但没有明确提及(例如更改日志),并且不包括文档页面的修改时间。因此,作为开发人员,我们很难以一种简单的方式检测到变化。

      【讨论】:

        猜你喜欢
        • 2020-08-09
        • 2020-07-23
        • 1970-01-01
        • 2021-06-03
        • 2020-05-13
        • 2019-11-27
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多