我有一个种子sqlite文件,可将初始数据传递给我的用户。使用标记为只读的通用核心数据堆栈(NSPersistentStoreCoordinator,NSManagedObjectModel,NSManagedObjectContext)将这些数据提供给用户。 因此,用户无法修改种子库中的条目,但可以将数据集和来自其的信息保存在单独的读/写存储中。
上次我更新种子sqlite文件(以使用更多数据来丰富它)时,我更喜欢创建/生成一个全新的文件。当然,内部模型/实体保持不变。 我在设备上对其进行了几次测试,看来核心数据在替换底层(只读)种子sqlite文件方面没有问题。 但是可悲的是,一些用户报告数据丢失,而我却无法重现这种情况。 那么替换(只读)种子sqlite文件不是处理更新的正确方法吗?
您有什么建议?欢迎其他最佳做法。