iOS StoreKit 最佳实践
iOS StoreKit best practice
根据 Apple 文档,最佳实践规定 SKPaymentQueue
观察者应添加到 didFinishLaunchingWithOptions
中并在 applicationWillTerminate
中删除。但是我注意到 applicationWillTerminate
不能保证被调用, applicationDidEnterBackground
可能会被调用。这样安全吗?
applicationDidEnterBackground
当然不能替代applicationWillTerminate
。前者表示你的应用已经进入后台,将被挂起。当您的应用即将 return 到前台时 applicationWillEnterForeground
将被调用。
如果调用 applicationWillTerminate
,则您的应用程序将终止。重新启动时,将调用 didFinishLaunchingWithOptions
。
确实applicationWillTerminate
不会一直被调用,但是iOS无论如何也无法向终止的应用程序传递支付交易,所以交易观察者可能不会总是被调用并不重要被删除。
根据 Apple 文档,最佳实践规定 SKPaymentQueue
观察者应添加到 didFinishLaunchingWithOptions
中并在 applicationWillTerminate
中删除。但是我注意到 applicationWillTerminate
不能保证被调用, applicationDidEnterBackground
可能会被调用。这样安全吗?
applicationDidEnterBackground
当然不能替代applicationWillTerminate
。前者表示你的应用已经进入后台,将被挂起。当您的应用即将 return 到前台时 applicationWillEnterForeground
将被调用。
如果调用 applicationWillTerminate
,则您的应用程序将终止。重新启动时,将调用 didFinishLaunchingWithOptions
。
确实applicationWillTerminate
不会一直被调用,但是iOS无论如何也无法向终止的应用程序传递支付交易,所以交易观察者可能不会总是被调用并不重要被删除。