我们在 iOS 应用程序中使用非续订订阅,并且对何时何地删除过期订阅感到困惑。例如,我们显示两个订阅(7 天和 30 天)。然后,用户购买其中一项订阅,我们将其保存在 NSUserDefaults 中,并存储在服务器上的数据库中(创建日期、订阅类型、到期日期)。现在我们遇到的困惑是,当用户超过 7 天(或 30 天)时,我们如何使订阅过期?
我们正在考虑在 didFinishLaunchingWithOptions 中执行此操作,但是如果用户保持登录状态并且从不终止其应用程序,会发生什么,
最佳答案
我会在applicationDidBecomeActive
中执行此操作。每次启动应用程序时都会调用此函数,即使它从未终止过。我想你对此会很安全。如果有人愿意让您的应用程序不断打开以防止过期,那么他们就非常专注于您的应用程序!此外,大多数人不知道您如何检查他们的订阅,因此他们可能不会考虑将其保持打开状态。
您还应该考虑将他们的订阅存储在 NSUserDefaults 中。如果他们删除该应用程序并重新安装怎么办?您是否检查数据库并将该值重新加载到默认值中?如果数据量很小,您可以将其存储在钥匙串(keychain)中。删除应用程序时,钥匙串(keychain)值不会被删除。
关于ios - 在哪里使用非续订订阅检查过期订阅?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16750983/