我已经阅读了Apple文档和Ray Wenderlich的教程。似乎我被迫使用UIDocument所以我在文档中读了它。我发现使用基于文档的方法很有效。
我的问题是我不想被特定于平台(iOS)的技术束缚,因此我的应用程序有自己的模型,从头开始只从NSObject继承。这包括保存/加载。
现在,我需要将iCloud与旧模型集成在一起。我将如何以优雅/有效的方式实现这一目标,以便保持我的旧模型实现并能够集成iCloud?
答案 0 :(得分:8)
您绝不会被迫使用UIDocument
。您可以通过NSFileManager
和NSMetadataQuery
使用iCloud。一般方法是:
-[NSFileManager setUbiquitous:itemAtURL:destinationURL:error:]
将文件传输到iCloud存储。NSMetadataQuery
或轮询网址资源值检查上传进度。NSMetadataQuery
查找iCloud驻留文件-[NSFileManager startDownloadingUbiquitousItemAtURL:error:]
开始下载或将本地副本与云副本同步。NSMetadataQuery
检查上传进度,或使用[NSURL resourceValuesForKeys:]
轮询网址资源值。NSFileCoordinator
与ubiquity守护程序协调文件访问。NSFilePresenter
获取文件更改通知。2012年WWDC(可能还有2011年,我不记得)的会议中都涵盖了这一点,您需要的类和方法都在iOS文档中。