只需在ubiquity容器中创建文件就可以将文件同步到iCloud:
NSFileManager *fileManager = [NSFileManager defaultManager];
NSURL *containerURL = [fileManager URLForUbiquityContainerIdentifier:nil];
NSURL *dirURL = [containerURL URLByAppendingPathComponent:@"files" isDirectory:YES];
NSError *error;
[fileManager createDirectoryAtURL:dirURL withIntermediateDirectories:NO attributes:nil error:&error];
NSURL *icloudURL = [dirURL URLByAppendingPathComponent:@"somefile.txt"];
[fileManager createFileAtPath:[icloudURL path] contents:someData attributes:nil];
这可行并且似乎是将文件放入iCloud的简单而直接的方式,但我在文档或提示中找不到允许此类API使用的示例。产生问题: 这样安全吗?这是Apple API文档允许的吗?它有任何已知问题吗?
说明:
答案 0 :(得分:0)
有一件事我确信使用iCloud并不简单!
有太多的例外,我认为它们从未发生但它们仍然存在。 (例如:有时iCloud向我的应用程序发送了一个NSConcreteData
对象,但我的应用程序使用了NSFileWrapper
;有时我的文件变成了一个文件夹,几分钟后它就会回复文件)
有很多方法可以访问iCloud。这是一个简单的方法: http://www.raywenderlich.com/12779/icloud-and-uidocument-beyond-the-basics-part-1
记住在使用iCloud时一定要小心(一切都会发生)
祝你好运