检查iCloud以查找现有内容

时间:2013-03-04 17:58:51

标签: core-data icloud

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

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

2 个答案:

答案 0 :(得分:0)

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

借助Core Data内置的iCloud支持,您可以检查现有数据的方式与未使用iCloud的方式完全相同。创建Core Data堆栈后,通过执行正常的Core Data提取来检查存在哪些数据。没有(暴露的)本地与云数据的概念,只有一个数据存储恰好知道如何与iCloud通信。您没有明确启动下载 - 它们会自动发生。

  • 在您致电addPersistentStoreWithType:configuration:URL:options:error:的应用启动时,Core Data会在内部启动下载尚未在本地提供的任何数据。结果,该方法可能会阻塞一段时间。如果成功返回,则可以假定所有当前下载都已完成。

  • 如果您的应用程序运行时出现新的更改,Core Data将下载并导入它们,并在完成后发布NSPersistentStoreDidImportUbiquitousContentChangesNotification以告诉您刚刚发生了什么。

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

答案 1 :(得分:0)

感谢@Tom Harrington指出,这个错误与开发人员/编码无关 - 这完全与iCloud / Apple /连接问题有关。

我发现了SO answer的更多内容。