需要轻量级迁移吗?

Lightweight Migration Necessary?

我有一个现有的应用程序。我已经进行过一次轻量级迁移,所以我并不完全陌生。但是,我最近在开发我的应用程序时,不加思索地添加了两个新实体,但没有添加新的 Core Data 模型版本。

然而,当我通过 Xcode 将应用程序上传到我的 phone 和几个测试用户 phone 时,它没有引起问题。

有没有可能不需要轻量级迁移?

当您为轻量级迁移设置您的应用程序时,您可能将以下行插入到您的 CoreData 框架中。这些设置启用了支持轻量级迁移的选项(这些来自 Swift 3.0 应用程序,因此它们可能会有所不同):

NSMigratePersistentStoresAutomaticallyOption as NSObject: true,                 
NSInferMappingModelAutomaticallyOption as NSObject: true 

如果您保留了这些行,那么 CoreData 将在需要时继续正确执行轻量级迁移,因此只要您不做任何需要您执行更多操作的事情,您应该没问题- 例如更改实体名称或 属性.