我正在尝试进行快速测试以将文件同步到 iCloud。这是我的简单片段:
url = [[ubiquityContainerURL
URLByAppendingPathComponent: @"Documents"]
URLByAppendingPathComponent:@"test.txt"];
doc = [[CloudDocument alloc] initWithFileURL:url];
[doc saveToURL:[doc fileURL]
forSaveOperation:UIDocumentSaveForCreating
completionHandler:^(BOOL success) {
}];
现在我试着环顾四周,在其他教程中,这似乎是他们这样做的方式。问题是当代码运行时,会抛出这个异常(在 [doc saveToURL] 行):
'NSInvalidArgumentException',原因:' * -[NSURL URLByAppendingPathExtension:]:组件、组件或 pathExtension 不能为 nil。
在此处获取普遍存在的 URL 后,将立即调用运行此逻辑的方法:
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
ubiquityContainerURL = [[NSFileManager defaultManager] URLForUbiquityContainerIdentifier:nil];
if (ubiquityContainerURL != nil)
[self writeAllBytesToLocalFile:@""];
});
我尝试了一些不同的方法来修复它,但它一直在发生。知道问题可能是什么吗?
谢谢大家的时间:)