我有一个iPhone应用程序,允许您下载地图图块,存储在核心数据sqlite数据库中。我之前使用momd设置了数据库迁移,遵循本指南 - http://iphonedevelopment.blogspot.com/2009/09/core-data-migration-problems.html
当我在每个表中都有少量数据时,测试升级时一切都很完美。但是当我下载大型地图时,100 MB左右,数据库迁移超时,并且应用程序在10秒内无法启动。然后数据库被破坏,只删除应用程序并重新安装它将修复它。
我的数据模型更改影响了航点表,该表相对较小,只添加了一列,因此不需要在整个地图图块表中执行大型操作。
是否有更好的方法来处理数据模型更改?
答案 0 :(得分:0)
在这种情况下,您应该将这样的large images存储为Documents目录中的单独文件。然后,您将文件名存储为Core Data实体中的属性。
一般情况下,如果您在应用启动时花费了大量时间,则应将其移至后台线程。