ios - 应用更新 CoreData 保存了吗?

标签 ios swift core-data

如果您只是进行应用程序升级并修复错误等,而不会以任何方式触及 CoreData 实现,设备是否会保留任何旧的 CoreData 条目?还是会为应用程序的所有版本创建一个新数据库?

更新应通过临时构建部署,并通过 iTunes 手动安装。

最佳答案

如果不删除并重新安装应用程序,设备保存的数据将保留。

应用更新后,在第一次启动时,Core data 会查找旧 NSManagedObjectModel 和新 NSManagedObjectModel 之间的差异。

如果新模型不同,您需要进行数据迁移,否则应用会崩溃。

Apple 提供自动数据迁移“轻量级迁移”,这在大多数情况下都有效。为了使用轻量级迁移,您必须将一个版本添加到您的核心数据模型文件,并调用一些方法:https://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/CoreDataVersioning/Articles/Introduction.html .

魔法记录https://github.com/magicalpanda/MagicalRecord总体上可以帮助您进行迁移和核心数据。

关于ios - 应用更新 CoreData 保存了吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33682511/

相关文章:

iphone - Objective-C 判断 iOS 设备的数据网络类型

ios - iTunes Connect 无效的预发行火车。

ios - 如何监听 ObservableObject

arrays - 在核心数据中存储 NSManagedObject 数组的 NSMutableArray | swift 2

ios - UITableView 行在 UITableViewHeaderSection 下滑动

ios - 对 UIImage 的 init(data :scale:) method in Swift 3. 0

swift - 在评估 'array' 中声明的条件后定义的 boolean 值

arrays - TableView 没有结果错误?

ios - 使用 To One 类型保存托管对象

core-data - iOS Core Data 如何正确初始化实体关系?