我正在使用核心数据进行存储。对于我的应用程序的第二个版本,我在核心数据中创建了一个新实体,因此我使用了轻量级迁移。通过此我的架构发生了变化,但用户数据丢失了。如何保存我的用户数据?
答案 0 :(得分:0)
你必须在你的appdelegate didFinishLaunching方法中添加一些新版本的逻辑,以便它检测到这是一个更新并且应用程序首次打开(你可以通过在userdefaults中有一些字段来实现)。
之后,您使用sqlite查询从用户的数据库中读取当前数据并暂时存储它。
然后从文件位置删除数据库并从核心数据中实例化新数据库,您需要通过sqlite查询将现有数据再次复制到新数据库,然后准备好备份旧数据。