应用程序未能及时恢复:核心数据

时间:2015-04-07 13:19:24

标签: ios core-data

我在核心数据中逐个填充多个实体中的数千条记录。这个过程需要时间来完成。当应用处于活动状态时,此过程正常工作。一旦应用程序进入后台并进入前台,应用程序就会崩溃并出现以下错误:

"未能及时恢复ios崩溃"

请提出一些解决方案。

由于

2 个答案:

答案 0 :(得分:0)

永远不应该在 - applicationDidFinishLaunching中创建核心数据堆栈。如果需要迁移,只需告知用户有关它,但您需要从 - applicationDidFinishLaunching ...返回尽可能快,您应该只在此方法中创建UI元素。此时您不应该访问Core Data。

答案 1 :(得分:0)

您不应该在主线程上执行非常耗时的任务。崩溃是由于填充过程需要10秒以上。它曾经发生在无限循环中。

为此任务启动一个新线程,当您的应用再次进入前台时,该线程将恢复。告诉用户发生了什么,即应用程序正在填充数据库并且可能需要一些时间。显示进度指示器也是一个好主意。 只要用户了解情况,他就会接受耐心等待。