1

检查 iCloud 中现有数据的最佳方法是什么?

我需要检查本地设备或 iCloud 上是否不存在数据,以便我可以下载它。

4

2 回答 2

0

由于您包含了core-data标签,我假设您的意思是您使用的是 Core Data,而不是 iCloud 文件 API 或无处不在的键值存储。

借助 Core Data 内置的 iCloud 支持,您可以像不使用 iCloud 一样检查现有数据。创建核心数据堆栈后,您可以通过正常的核心数据获取来检查存在哪些数据。没有(公开的)本地数据与云数据的概念,只有一个数据存储恰好知道如何与 iCloud 通信。您无需明确启动下载——它们会自动发生。

  • 在您调用 应用程序启动时addPersistentStoreWithType:configuration:URL:options:error:,Core Data 会在内部启动下载任何本地尚不可用的数据。因此,此方法可能会阻塞一段时间。如果它成功返回,则可以假定所有当前下载已完成。

  • 如果在您的应用程序运行时出现新的更改,Core Data 将下载并导入它们,并在完成后发布NSPersistentStoreDidImportUbiquitousContentChangesNotification通知您刚刚发生的情况。

这一切都描述了 Core Data 的 iCloud应该如何工作。在实践中,您可能会发现它并不总是按预期工作。

于 2013-03-04T18:17:31.077 回答
0

感谢@Tom Harrington 指出,此错误与开发人员/编码无关 - 它纯粹与 iCloud/Apple/连接问题有关。

关于我找到的这个SO 答案的更多信息。

于 2013-03-04T18:40:51.023 回答