如果你只是做一个不会以任何方式触及CoreData实现的错误修正等应用程序升级,设备是否会保留任何旧的CoreData条目?或者它会为应用的所有版本创建一个新数据库吗?
更新应通过ad-hoc构建和通过iTunes手动安装进行部署。
答案 0 :(得分:3)
如果未删除并重新安装应用程序,设备保存的数据仍然存在。
应用更新后,首次启动时,Core数据会查找旧NSManagedObjectModel与新NSManagedObjectModel之间的差异。
如果新模型不同,则需要进行数据迁移,否则应用程序崩溃。
Apple提供自动数据迁移“轻量级迁移”,这在大多数情况下都有效。要使用轻量级迁移,您必须将版本添加到Core Data Model文件,并调用一些方法:https://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/CoreDataVersioning/Articles/Introduction.html。
MagicalRecord https://github.com/magicalpanda/MagicalRecord可以帮助您完成迁移和核心数据。