5

我目前正在创建一个应用程序,该应用程序需要将大量用户生成的信息存储在 Core Data 中。当我发布此应用程序的新更新时,我想确保这些用户不会丢失所有这些数据。

当我从 iPhone 中删除当前版本时,所有 Core Data 都会消失 - 当我创建新的更新版本时会发生这种情况 - 更新是否会导致所有 Core Data 在应用程序被替换时被删除?如果是这样,我必须做些什么来保存数据?

我不会在更新之间更改我的核心数据模型,如果这改变了任何东西......

4

2 回答 2

7

简单的问题 - 简单的回答,Core Data 作为 iPhone 备份的一部分备​​份到 iTunes/iCloud,并且用户数据也在更新之间保持不变。

您可以选择包含要包含在 iCloud 同步中的核心数据,这意味着即使删除应用程序并重新安装它,数据也会保留。

如果您更改模型,则可以合理地将旧方案映射到新方案,然后在发生新更新时通过此映射模型传输数据,以前的方案数据将被传输到新的核心数据方案中。

核心数据版本控制:https ://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/CoreDataVersioning/CoreDataVersioning.pdf

于 2012-08-10T00:33:50.680 回答
3

如果应用商店 Ver1.0 中有您的应用。更新 Ver1.0.1 或更高版本,CoreData 将被维护。如果核心数据模型发生变化,尽管之前的所有核心数据都将保留。

如果应用商店 Ver 1.0 中有您的应用。删除 1.0 版。再次下载或下载更新版本,CoreData 将被删除。

如果您删除应用程序,核心数据将被删除。为了防止这种情况,使用 iCloud 同步数据应该可以工作。

参考以下站点,iOS 操作方法:将 Core Data 与 iCloud 一起使用

一定是您将阅读以下 Apple PDF:coredata 模型版本控制和数据迁移编程指南

于 2012-08-10T00:30:22.553 回答