我在 App Store 上有一个应用程序,现在是第二个版本。该应用程序使用 Core Data 来存储我不想在安装应用程序升级时丢失的信息。

我的问题是,如果用户在他们的 iPad 上安装了 1.0 版并将数据存储在他们的核心数据库中,那么在下载和安装 1.1 版更新时该数据库会被删除吗?

请您参考如下方法:

这完全取决于您。当您设置核心数据堆栈时,您可以将 NSPersistentStoreCoordinator 指向应用程序可写文件夹中您想要的任何位置的特定文件。您放置该文件的位置决定了它是否会在应用程序更新期间迁移。

一个常见的选择是将您的数据库文件放在用户的文档目录中,这将导致 iOS 在为您的应用程序安装更新时将其复制。然后,在启动时,您负责按照您认为合适的方式处理该数据库(更新其中的数据、迁移您的架构等)。将文件放在别处 - 例如在临时目录中 - 可能会导致它在更新期间丢失。

参见 File System Programming GuideCore Data Model Versioning and Data Migration获取更多信息。


评论关闭
IT序号网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!