当用户在苹果应用程序购买中升级订阅时,我该怎么办



现在,当用户在苹果应用程序购买中升级自动续订订阅产品时,苹果服务器会向我的开发服务器发送DID_CHANGE_RENEWAL_STATUS消息。现在我成功地收到了消息。但我不知道该怎么做才能正确处理DID_CHANGE_RENEWAL_STATUS消息。我阅读了文档并从网上搜索,告诉我苹果将在下一期生效新升级的订阅。收到DID_CHANGE_RENEWAL_STATUS消息时该怎么办?

我想了一种方法,保存新升级的订阅记录,并将新订阅的记录标记为无效,直到收到来自苹果服务器的切换消息。我应该这样做吗?

现在我通过使用产品id和过期日期获得订阅产品,我必须添加另一个字段来标记新升级的产品无效。我只是想知道如何以最佳方式处理DID_CHANGE_RENEWAL_STATUS消息。和降级自动续费产品一样,任何建议都欢迎。

此事件只是告诉您product_id将发生更改。

正如你所说,如果是上坡/交叉坡,它会立即改变。如果是降级,它将在下一个expires_date发生变化。

要知道是否应该更改与用户关联的当前产品,请查看latest_receipt_info的最后一个元素(按web_order_line_item_id排序(并检查product_id。如果它的值与升级后的产品匹配,您应该更改,否则没有。

如果它没有改变,你会得到新产品:

  • 在上坡/交叉坡的情况下:INTERACTIVE_RENEWALS2S将接替DID_CHANGE_RENEWAL_STATUS(并且您必须检查latest_receipt_info.product_id属性,如前所述(
  • 在降级的情况下:由于expires_date将过期,您需要使用/verifyReceipt API检查订阅是否已续订。通过查看product_id属性,您将检测到降级

相关内容

最新更新