ios - 如何在应用程序生命周期内处理自动续订订阅结束
问题描述
例如,如果用户正在运行每周自动续订订阅,该订阅在 4:00 到期(然后它将续订),并且用户在 3:55 到 4:10 之间使用应用程序,您打算如何处理它?
我注意到 paymentQueue(_:updatedTransactions:) 在应用程序生命周期内不会触发(也许我错了?),所以我无法获得通知我用户仍然订阅的新续订。
在这种情况下,我是否需要调用恢复购买来强制检测续订,或者我是否应该考虑用户仍在订阅,直到应用程序被终止(因此在下次启动时,将触发 paymentQueue)?或者也许是第三种解决方案?
解决方案
得到 Apple StoreKit 工程师的官方答复:
Apple 认为这是一个边缘案例,并建议您不要实时处理订阅到期(如果可能)。
这意味着,如果您的订阅将您的用户变成高级用户,只需在应用程序的整个生命周期内保持 Premium 标志为真(直到应用程序被用户或系统杀死)。
下次重新启动应用程序时,您可以依赖潜在的新 paymentQueue:updatedTransaction。
推荐阅读
- javascript - 使用 `const` 声明 ES6 函数并不能使其全局可用,但 `var` 可以
- python - 在 Windows 10 上的 PyCharm 中安装 numpy
- mysql - 在 Apollo 客户端上自动将 MySQL 日期时间转换为毫秒?
- neo4j - 需要帮助确定 2 位演员在最多的电影中一起表演的次数(密码)
- javascript - 我可以使用 res.send(foo) 两次吗?
- c++ - printf() 和 std::cout 在指针方面的区别
- linux - 如何获取驻留集大小 (RSS)
- java - 添加/铸造 LinkedList
到链表 - python - 如何在 Python 中导入和分析大型 TMX 文件
- angular - 如何在组件中触发文件输入元素,同时指定文件接受类型属性?