我有一个应用程序可以读取世界各地站点的风读数。我决定使用 iCloud 和 Core Data,使用鞋盒式应用程序。
风速读数每小时更新一次,在使用该应用程序几周后,我意识到这是一个坏主意,因为 iCloud/Core Data 只填满了兆字节的交易,并且恢复设备需要 10 分钟才能将商店下载到新设备。
我对此的解决方案是使用 Core Data 配置,以便“站点”存储在 iCloud 存储中,但每小时变化的“风读数”在 12 小时后被删除,存储在本地存储中。如果它更容易想象,它的工作方式类似于每小时更改的 RSS“站点”和“条目”。
这一切都很好,但我不知道如何为我的应用程序的 2.0 版本编写迁移代码。在阅读了配置是如何工作的之后,我不得不删除站点和风读数之间的父/子关系,并使用获取请求使用通用的 siteIdentifier UUID 将它们链接起来。
这样做我假设我不能使用轻量级迁移?加载版本化的 .momd 模型文件也只是给了我最新的模型,所以我如何获取原始模型文件来加载商店并手动完成所有操作。
另一方面,这是否太复杂了,我会更好地删除 iCloud 支持,或者您还有其他推荐的方法吗?