Unsere App unterstützt nur den Hochformat-Modus. Das Präsentieren eines UIActivityViewControllers funktioniert.iOS: Absturz beim Teilen mit der Option "Nachricht"
*** Beenden app aufgrund nicht abgefangene Ausnahme 'UIApplicationInvalidInterfaceOrientation', Grund:
Doch mit der "Message" Option teilen die App abstürzt ‚Unterstützte Orientierungen mit der Anwendung keine gemeinsame Ausrichtung hat, und [MFMessageComposeViewController shouldAutorotate] zurückkehrt YES‘
mit einer anderen Option teilen, wie Facebook Messenger, funktioniert.
Lösungen von ähnlichen SO Fragen like this one funktionieren nicht, da sie vorschlagen, alle Orientierungen zu unterstützen. Wir wollen nur Portrait unterstützen.
1) Wie können wir die Option "Nachricht" unterstützen, während nur die Hochformat-Ausrichtung unterstützt wird, während die Hochformat-Ausrichtung nur in Info.plist unterstützt wird?
2) Warum können wir die Freigabeoption "Nachricht" in anderen Apps nur mit Hochformat in Info.plist unterstützen, aber nicht in diesem? Wo sollten wir nach Debugging-Zwecken suchen?
// Define share objects
let objectsToShare = ["test message"] as [Any]
// Configure UIActivityViewController
let activityViewController = UIActivityViewController(activityItems: objectsToShare, applicationActivities: nil)
activityViewController.excludedActivityTypes =
[UIActivityType.addToReadingList,
UIActivityType.assignToContact,
UIActivityType.print,
UIActivityType.copyToPasteboard]
// Define completion handler
activityViewController.completionWithItemsHandler = doneSharingHandler
// Show UIActivityViewController
present(activityViewController, animated: true, completion: nil)
Wie hackisch bist du bereit zu gehen? Siehe einen hashischen Vorschlag in meiner Antwort. –
@LeoNatan hahaha eine Frage, die du nie auf SO hören willst ... :) wird deine Antwort überprüfen und dort kommentieren. danke für Ihre Hilfe! – Crashalot
Ich habe eine kleine Beispiel-App erstellt, um zu testen, was Sie tun (unterstützt nur die Ausrichtung des Hochformat-Bildschirms), und ich kann das von Ihnen zitierte Problem nicht wirklich reproduzieren. Ich habe 2 oder 3 Apps im App Store, die es Benutzern erlauben, Dinge mit 'UIActivityViewController' zu teilen. Es handelt sich ausschließlich um Portrait-Apps, und ich habe dieses Problem noch nie mit Nachrichten, E-Mails oder anderen Freigabeoptionen gesehen. Also, mein Vorschlag an Sie wäre, weiter zu untersuchen, wo genau die App abstürzt. Ich denke, Sie sollten Ihren Code erneut prüfen und sicherstellen, dass Sie an anderer Stelle in Ihrem Code nichts tun, um dieses Problem zu verursachen. I – pranjal