如何将 CoreData 存储到 iCloud 帐户 iOS 编程?

Posted

技术标签:

【中文标题】如何将 CoreData 存储到 iCloud 帐户 iOS 编程?【英文标题】:How to store CoreData to iCloud account iOS Programming? 【发布时间】:2015-12-04 16:33:59 【问题描述】:

我已将 core-data 中的数据存储到我的项目中。我想将我的应用程序备份到 iCloud。因此,当用户更换手机时,他可以恢复所有数据。

有没有关于这方面的好教程或帮助文档。

我想知道

1.我可以将数据保存在 iCloud 上吗?

2。我可以将整个数据库保存为单个文件吗?

3.我可以以类似的格式/结构提取/下载 iCloud 吗?

谢谢。

【问题讨论】:

这不是默认行为吗?它是自动备份的 我对此一无所知。能不能指导一下。它是如何保存的? 当用户将数据备份到iCloud时,CoreData数据库已经包含在这个备份中,以后会自动恢复, 所以,你想说我的应用程序必须打开 iCloud,它会自动备份相同结构的所有数据库。当用户从其他设备登录时,它会自动备份它。我说的对吗? 【参考方案1】:
    是的 没有 是的

问候计划!

我已使用此类的修改版本在我的应用中集成了 iCloud 和 Core Data:

https://gist.github.com/mluisbrown/7015953

在我的应用程序中,我有一个设置,用于在 persistentStoreCoordinator 选项属性中设置 NSPersistentStoreUbiquitousContentNameKey(nil = 未启用 iCloud)。

使用 iCloud 时,它使用与用于 Core Data 的数据模型相同的结构,但 iCloud 数据不会同步/保存/备份到 Core Data。我使用 persistentStoreCoordinator.migratePersistentStore 方法将数据从 iCloud 复制到 Core Data,但您必须自己检查重复项。

Wg

【讨论】:

以上是关于如何将 CoreData 存储到 iCloud 帐户 iOS 编程?的主要内容,如果未能解决你的问题,请参考以下文章

CoreData 不会在存储播种后立即将数据上传到 iCloud

CoreData 和 iCloud;如何跟踪上次保存到云端的设备?

将 CoreData 存储在 iCloud 中

iCloud中的CoreData和照片问题[重复]

将 Ensembles 添加到现有 Coredata / iCloud 应用程序的步骤

在 iOS 7 中禁用 Core Data 中的 iCloud(也就是将持久存储文件迁移到本地)