설정 App-> iCloud-> Storage & Backup-> Manage Storage-> App Name으로 이동하여 파일을 삭제할 수 있어야합니다. 나는 당신이 iCloud/Documents 디렉토리에있는 파일 만 볼 수 있다고 생각하지만 다른 것을 지우려면 코드가 필요할 수 있습니다.
Mac을 사용하고 ~/Library/Mobile Documents로 이동하여 파일을 제거하십시오. ubiquityID
이 앱을 iCloud에 컨테이너 ID입니다
NSURL *iCloudURL = [[NSFileManager defaultManager] URLForUbiquityContainerIdentifier:ubiquityID];
:
는 iCloud에 컨테이너 사용이를 얻으려면.
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^(void) {
NSFileCoordinator* fileCoordinator = [[NSFileCoordinator alloc] initWithFilePresenter:nil];
[fileCoordinator coordinateWritingItemAtURL:fileURL options:NSFileCoordinatorWritingForDeleting
error:nil byAccessor:^(NSURL* writingURL) {
NSFileManager* fileManager = [[NSFileManager alloc] init];
NSError *er;
//FLOG(@" deleting %@", writingURL);
bool res = [fileManager removeItemAtURL:writingURL error:&er];
if (res) {
LOG(@" iCloud files removed");
}
else {
LOG(@" document NOT removed");
FLOG(@" error %@, %@", er, er.userInfo);
}
}];
}
:
는
iCloudURL
/*! Recursively lists all files
@param dir The directory to list
@param padding A string padding to indent the output depending on the level of recursion
*/
- (void)listAllFilesInDirectory:(NSURL*)dir padding:(NSString*)padding {
NSArray *docs = [[NSFileManager defaultManager] contentsOfDirectoryAtURL:dir includingPropertiesForKeys:nil options:0 error:nil];
for (NSURL* document in docs) {
FLOG(@" %@ %@", padding, [document lastPathComponent]);
BOOL isDir;
BOOL fileExists = [[NSFileManager defaultManager] fileExistsAtPath:document.path isDirectory:&isDir];
if (fileExists && isDir) {
[self listAllFilesInDirectory:document padding:[NSString stringWithFormat:@" %@", padding]];
}
}
}
이 통과 같은 것을 사용하고 사용자에게이 같은 fileCoordinator 뭔가를 필요로 편재 컨테이너에서 물건을 삭제하려면 iCloud에 컨테이너에있는 모든 파일을 나열하려면
error.userInfo의 오류 세부 정보 게시 NSLog (@ "error is % @", error.userInfo); –
'NSURL * iCloudURL = [[NSFileManager defaultManager] URLForUbiquityContainerIdentifier : _ubiquityID];'와 같은 유비쿼터스 컨테이너를 얻는 것이 가장 좋습니다. '_ubiquityID'는 앱의 iCloud 컨테이너 식별자입니다. –
그리고 귀하의 앱은이 디렉토리 내의 내용을 제거 할 권한만을 가질 수 있습니다. –