UIActivityViewController denkt, mein JPG ist ein Video, wenn es über die Datei-URL freigegeben wird
Ich habe JPG-Dateien im Verzeichnis "Documents" gespeichert, die von einem Standard-UIActivityViewController freigegeben werden können. Alle Aktivitätselemente (einschließlich "Bild speichern") funktionieren wie erwartet. Wenn Sie jedoch auf "Bild speichern" tippen, wird in der Konsole der folgende Fehler angezeigt, obwohl das JPG tatsächlich auf der Kamerarolle gespeichert wird.
Ist dies ein Fehler in iOS oder muss ich irgendwie angeben, dass meine Datei ein JPG (und kein Video) in der Datei-URL ist?
2015-07-29 06: 46: 58.317 AppName [4658: 893408] Video /var/mobile/Containers/Data/Application/A63DF08E-21D0-435D-A0D7-84D73D632FC9/Documents/ImageStore/805/23.jpg kann nicht sein Im Album für gespeicherte Fotos gespeichert: Fehler Domain = AVFoundationErrorDomain Code = -11828 "Kann nicht geöffnet werden" UserInfo = 0x1702e8b80 {NSLocalizedFailureReason = Dieses Medienformat wird nicht unterstützt., NSLocalizedDescription = Kann nicht geöffnet werden, NSURL = Datei: /// var / mobile / Containers /Data/Application/A63DF08E-21D0-435D-A0D7-84D73D632FC9/Documents/ImageStore/805/23.jpg, NSUnderlyingError = 0x170c4f9f0 "Der Vorgang konnte nicht abgeschlossen werden. (OSStatus error -12847.)}
Hier ist der Code, den ich verwende:
NSURL *fileURL = [NSURL fileURLWithPath: [...path to my file...] isDirectory:NO];
UIActivityViewController *activityViewController = [[UIActivityViewController alloc] initWithActivityItems:@[fileURL] applicationActivities:nil];
activityViewController.excludedActivityTypes = @[UIActivityTypeCopyToPasteboard, UIActivityTypePrint, UIActivityTypeAssignToContact, UIActivityTypeAddToReadingList, UIActivityTypePostToVimeo];
[self presentViewController:activityViewController animated:YES completion:nil];