У меня проблемы с вставкой операций в мои контейнеры с расширением File Provider.
Если я вставлю скопированное изображение или текст в приложение «Файлы» -> «Моё приложение» -> в любую папку, файл в fileURL не сможет быть прочитан (в результате не может быть загружен на мои серверы или сохранен локально).
- (void)importDocumentAtURL:(NSURL *)fileURL
toParentItemIdentifier:(NSFileProviderItemIdentifier)parentItemIdentifier
completionHandler:(void (^)(NSFileProviderItem _Nullable importedDocumentItem, NSError * _Nullable error))completionHandler
{
NSError *readError = nil;
NSData *fileData = [NSData dataWithContentsOfURL:fileURL options:NSDataReadingMappedAlways error:&readError];
NSString *readErrorMessage = readError.localizedDescription;
NSURL *myFileURL = [NSFileProviderManager.defaultManager.documentStorageURL URLByAppendingPathComponent:@"temp.dat"];
NSError *copyError = nil;
BOOL copyResult = [_fileManager copyItemAtURL:fileURL toURL:myFileURL error:©Error];
NSString *copyErrorMessage = copyError.localizedDescription;
...
И readErrorMessage, и copyErrorMessage:
Файл «text.txt» не может быть открыт, поскольку у вас нет разрешения на его просмотр.
Что я здесь не так делаю?
Спасибо.
UPD: Это происходит с любым файлом, скопированным из моего контейнера, контейнера iCloud, а также с синтетическими файлами, созданными из текста / изображения / других данных из системного буфера обмена.