我读过苹果文档和雷·温德利希的教程。看起来我是被迫使用UIDocument的,所以我在文档中查阅了一下。我发现使用基于文档的方法是有效的。
我的问题是,我不想被特定于平台的技术(iOS)所束缚,因此我的应用程序有自己的模型,这些模型是从头开始制作的,只继承自NSObject。这包括保存/加载。
现在,我需要集成iCloud和我的旧模型。在保留旧模型实现并能够集成iCloud的情况下,我将如何以优雅/有效的方式做到这一点?
发布于 2013-03-27 00:37:58
您不会以任何方式被强制使用UIDocument。您可以通过NSFileManager和NSMetadataQuery使用iCloud。一般的方法是:
创建文件时
的情况下照常在本地创建文件
-[NSFileManager setUbiquitous:itemAtURL:destinationURL:error:]将文件传输到iCloud存储。NSMetadataQuery或通过轮询URL值检查上载进度。打开文件时
NSMetadataQuery查找iCloud驻留的文件-[NSFileManager startDownloadingUbiquitousItemAtURL:error:]开始下载或将本地副本与云副本同步。NSMetadataQuery或通过使用iCloud轮询URL资源值来检查上载进度编辑文件时
NSFileCoordinator协调您的文件访问与ubiquity守护程序。NSFilePresenter获取文件更改的通知。这一切都在WWDC2012(可能是2011年,我不记得了)的会议中涵盖了,您需要的类和方法都在iOS文档中。
https://stackoverflow.com/questions/15631294
复制相似问题