核心数据自动轻量级迁移在 ios5 上失败

Posted

技术标签:

【中文标题】核心数据自动轻量级迁移在 ios5 上失败【英文标题】:core data automatic lightweight migration failing on ios5 【发布时间】:2012-01-05 16:05:51 【问题描述】:

我有一个新版本的模型,其中一个实体有一个额外的属性,实际上没有其他属性。

我已经设置了自动迁移,因为没有其他要迁移的东西,发生的情况是在 ios4.3 中它按预期工作,但在 ios5 中调用[persistentStoreCoordinator_ addPersistentStoreWithType:NSSQLiteStoreType configuration:nil URL:storeURL options:options error:&error] 会使应用程序崩溃,说访问不正确。

在 ios 5 中是否记录了任何关于迁移的错误,或者关于自动迁移有什么变化?

我无法获得有关崩溃细节的更多信息,因此我的问题很笼统,但只是想知道是否有其他人在使用 ios5 迁移时遇到了困难?

【问题讨论】:

【参考方案1】:

似乎是 CoreData 中的一个错误。创建一个 MappingModel 并使用这个选项为我解决了这个问题:

NSDictionary *options = [NSDictionary dictionaryWithObjectsAndKeys:
        [NSNumber numberWithBool:YES], NSMigratePersistentStoresAutomaticallyOption,nil]; 

【讨论】:

【参考方案2】:

我不确定发生了什么变化,但通常 EXC_BAD_ACCESS 错误通常是在您尝试向已释放对象发送消息时引起的。

参考Break on EXC_BAD_ACCESS in XCode?

【讨论】:

以上是关于核心数据自动轻量级迁移在 ios5 上失败的主要内容,如果未能解决你的问题,请参考以下文章

iOS 上的 CoreData 轻量级迁移失败

Core Data轻量级迁移错误

CoreData 版本控制和阻塞轻量级迁移

iOS 核心数据轻量级迁移

Core Data(iPhone)实现“自动轻量级迁移”

核心数据版本控制(轻量级迁移)问题