iOS StoreKit最佳实践

时间:2018-04-24 11:01:58

标签: ios swift storekit

根据Apple文档,最佳做法规定SKPaymentQueue观察者应添加到didFinishLaunchingWithOptions并在applicationWillTerminate中删除。但我注意到applicationWillTerminate无法保证被调用,而applicationDidEnterBackground可能会被调用。这样安全吗?

1 个答案:

答案 0 :(得分:0)

applicationDidEnterBackground肯定不是applicationWillTerminate的替代品。前者表示您的应用已进入后台并将被暂停。当您的应用即将返回前台时,将调用applicationWillEnterForeground

如果调用了applicationWillTerminate,那么您的应用将会终止。重新启动时,将调用didFinishLaunchingWithOptions

确实不会总是调用applicationWillTerminate,但iOS无论如何都无法向已终止的应用程序提供支付交易,因此无法始终删除事务观察者并不重要。