2010-02-20 55 views
0

我有一个iPhone应用程序,允许您下载的地图瓦片,它们存储在核心数据SQLite数据库。我以前使用momd设置数据库迁移,按照本指南 - http://iphonedevelopment.blogspot.com/2009/09/core-data-migration-problems.htmliPhone数据库迁移超时

当测试升级时,当我在每个表中有少量数据时,这一切都很完美。但是,当我有一个大的地图下载,100 MB左右,数据库迁移超时和应用程序并不在10秒内启动。数据库然后被破坏,只有删除应用程序并重新安装它才能修复它。

我的数据模型更改影响了相对较小的路点表,因此它不需要在整个地图瓦片表中执行大型操作。

有没有更好的方法来处理数据模型的变化?

回答

0

在这种情况下,您应该将这样的large images作为单独的文件存储在Documents目录中。然后,您将文件名称作为属性存储在Core Data实体中。

一般来说,如果您的应用程序启动需要很长时间的操作,则应将其移至后台线程。