我很擅长使用Core Data进行数据迁移,但我已经完成了所有设置并且看起来并不太难。
当用户第一次打开更新的应用程序时,应在应用程序加载期间按预期升级数据库。我猜测更新最多不会超过几秒钟,所以我甚至不会让用户知道这种情况正在发生。
如果用户在数据库升级时决定在最初几秒退出应用程序,会发生什么?
处理得好吗?即 - 应用程序关闭时更新是否继续完成?或者,升级的中间状态是否已保存,并且在下次应用程序启动时从中断状态继续完美无缺?
我是否必须担心这一点(有大量用户,我确信至少有一些用户在更新期间会退出)。或者,苹果公司是否已经完成了这一切 - 我不必担心它吗?
答案 0 :(得分:2)
核心数据轻量级迁移将成功或失败。在迁移过程结束之前未提交迁移的情况。如果用户在恰当的时间退出应用程序,他们会在重新启动应用程序时重新迁移,因为事务未正确完成。
如果用户为应用程序提供背景,然后恢复轻量级迁移的执行状态,则确保数据完整性。