Я пытаюсь получить доступ к файлу, чтобы вставить копию в мое приложение, чтобы пользователи могли связать его с соответствующей информацией. До недавнего времени он работал нормально, и теперь я неожиданно получаю следующее сообщение:
Не удалось прочитать файл, ошибка Ошибка Domain = NSCocoaErrorDomain Code = 257 "Файл" [Имя файла]”Не может быть открыт, потому что у вас нет разрешения на его просмотр."UserInfo = {NSFilePath = / private / var / mobile / Библиотека / Мобильные документы / com ~ apple ~ CloudDocs / [Имя файла], NSUnderlyingError = 0x281b88690 {Ошибка домена = NSPOSIXErrorDomain Code = 1 «Операция не разрешена»}}
Это код, который выдает ошибку:
//AppDelegate.m
-(BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary<UIApplicationOpenURLOptionsKey,id> *)options
{
if (![url.pathExtension isEqualToString:@"pdf"] && ![url.pathExtension isEqualToString:@"png"] && ![url.pathExtension isEqualToString:@"jpg"] && ![url.pathExtension isEqualToString:@"jpeg"]){
return false;
}
NSError* error = nil;
NSString *path = [url path];
NSData *data = [NSData dataWithContentsOfFile:path options: 0 error: &error];
if(data == nil) {
NSLog(@"Failed to read file, error %@", error);
}
//Do stuff with the file
return true;
}
Я обновился до xcode 11 и iOS 13, поэтому там, возможно, произошли изменения, о которых я не знал.