Все мои приложения использовались для сохранения непосредственно в альбоме фотографий, вот и все. Пора мне идти в ногу со временем и начать использовать UIDocumentInteractionController.
Я нашел десятки примеров и руководств. Очень немногие из них имели дело с фотографиями. Но все они говорили примерно одно и то же.
Если я отправлю фотографию куда-нибудь, кроме фотоальбома, ошибок не будет, и все заработает. При сохранении в фотоальбом он генерирует большое сообщение ниже, но сохраняет изображение в фотоальбоме. По какой-то причине при попытке сохранить PNG в сообщении появляется слово «Видео».
Все аспекты кода работают, за исключением этого уродливого сообщения об ошибке, которое появляется только при сохранении в фотоальбом.
Меня беспокоит то, что Apple отклоняет мои приложения из-за этого сообщения об ошибке.
Кто-нибудь раньше с этим сталкивался? Любая помощь будет оценена по достоинству.
2018-10-27 19: 50: 40.085701-0400 TestImportandExport [28346: 31506523] [Generic] видео / Users / xxxxxxxxxxxx / Library / Developer / CoreSimulator / Devices / C1A267C3-5261-47BB-B4EF-92D93254D8A1 /Application/7FCD6086-B523-44AE-824E-D0E23886BF45/Documents/TestImportandExport_Sample_Image.png невозможно сохранить в библиотеке фотографий: Error Domain = AVFoundationErrorDomain Code = -11828 «Невозможно открыть» UserInfo = {NSUnderlyingError = 0x6000029525b0 {Error Domain = NSOSStatusErrorDomain Code = -12847 "(null)"}, NSLocalizedFailureReason = Этот формат мультимедиа не поддерживается ., NSURL = file: /// Users / xxxxxxxxxxxx / Library / Developer / CoreSimulator / Devices / C12613247Data /Containers/Data/Application/7FCD6086-B523-44AE-824E-D0E23886BF45/Documents/TestImportandExport_Sample_Image.png, NSLocalizedDescription = Невозможно открыть}
Вот код: (Прошу прощения за то, что я динозавр Objective-C)
NSString *imagePath = [NSString stringWithFormat:@"%@/TestImportandExport_Sample_Image.png",[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject]];
[[NSFileManager defaultManager] removeItemAtPath:imagePath error:nil];
[UIImagePNGRepresentation(mainImage.image) writeToFile:imagePath atomically:YES];
documentInteractionController = [[UIDocumentInteractionController alloc] init];
documentInteractionController = [UIDocumentInteractionController interactionControllerWithURL:[NSURL fileURLWithPath:imagePath] ];
documentInteractionController.delegate = self;
documentInteractionController.name = @"TestImportandExport_Sample_Image.png";
[documentInteractionController presentOptionsMenuFromRect:sender.frame inView:self.view animated:NO];
Нет, решения не нашел. Он работает на симуляторе и на оборудовании. Я отправил свое приложение с этой проблемой. Apple одобрила его, и он сохраняет фотографии, как и ожидалось. Без вопросов.





Вы добились прогресса? Я вижу точно такую же ошибку при попытке сохранить файл PNG в фотоальбом с помощью
UIActivityViewController.