答案 0 :(得分:21)
每当你看到0x8badf00d
表示你被发射监督机构杀死时。您的应用从-applicationDidFinishLaunching...
返回时间过长。正常核心数据相关的原因是:
-applicationDidFinishLaunching...
-applicationDidFinishLaunching...
要解决此问题,您需要更改启动。永远不应在-applicationDidFinishLaunching...
中创建核心数据堆栈。而是让-applicationDidFinishLaunching...
完成然后站起来核心数据堆栈。如果需要迁移(您可以非常轻松地检查),然后向用户显示一个UI,通知他们延迟,然后启动它。
在任何一种情况下,您都需要尽快从-applicationDidFinishLaunching...
返回,您应该只在此方法中创建UI元素;此时您不应该访问Core Data。