applicationDidEnterBackground

applicationDidEnterBackground

当应用程序终止时,我将数据写入数据库。

从 iOS 4 applicationWillTerminate: is not call 开始,我在 applicationDidEnterBackground: 和 applicationWillTerminate 中放置了相同的保存代码:

我读到在 applicationDidEnterBackground: 中执行的任务需要一些时间。

那么,如果在 db 上的写作需要更多,我该如何管理呢?

最佳答案

您有 5 秒钟的时间在 applicationDidEnterBackground: 方法中执行任何保存等操作。

如果您需要超过 5 秒的时间,可以使用此 UIApplication 方法来请求后台线程,这将允许有更多时间做您需要的任何事情:

- (UIBackgroundTaskIdentifier)beginBackgroundTaskWithExpirationHandler:(void(^)(void))handler

这是 Apple 的示例代码:

http://developer.apple.com/library/ios/documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/BackgroundExecution/BackgroundExecution.html#//apple_ref/doc/uid/TP40007072-CH5-SW12

关于database - applicationDidEnterBackground : and time to write on a database,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4769967/

10-11 13:54