我正在尝试将文件夹(“缓存”)从我的应用程序目录复制到我的iCloud容器中 .
这适用于模拟器,但在实际设备上,我收到权限错误 .
代码:
NSFileManager* fileManager = [NSFileManager defaultManager];
NSArray* paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSURL* documentsDirectory = [[NSURL fileURLWithPath:[paths objectAtIndex:0]] URLByDeletingLastPathComponent];
NSURL* icloudDirectory = [fileManager URLForUbiquityContainerIdentifier:nil];
NSURL* fileUrl;
NSURL* icloudUrl;
NSError* err = nil;
fileUrl = [documentsDirectory URLByAppendingPathComponent:@"Library/Caches"];
icloudUrl = [icloudDirectory URLByAppendingPathComponent:@"Documents/Caches"];
[fileManager copyItemAtURL:fileUrl
toURL:icloudUrl
error:&err];
错误:
错误域= NSCocoaErrorDomain代码= 513“”快照“无法复制,因为您无权访问”缓存“ . ” UserInfo = {NSSourceFilePathErrorKey = / var / mobile / Containers / Data / Application / 8B75D173-D73F-4F2A-AD89-29751D798BF5 / Library / Caches / Snapshots,NSUserStringVariant =(Copy),NSDestinationFilePath = / private / var / mobile / Library / Mobile Documents / iCloud~com~clicksware~ClickMobileCDV / Documents / Caches / Snapshots,NSFilePath = / var / mobile / Containers / Data / Application / 8B75D173-D73F-4F2A-AD89-29751D798BF5 / Library / Caches / Snapshots,NSUnderlyingError = 0x1c805dc10 }
我可以以某种方式获得许可吗?我尝试使用 startAccessingSecurityScopedResource
但它返回false .
谢谢!