2017-05-30 6 views
0

zu opponieren Ich versuche, Basisanwendung von iMessage App zu öffnen, die eine Erweiterung in meinem xcode-Projekt (als Zielanwendung hinzugefügt) ist. Ich benutze [self.extensionContext openURL:url completionHandler::^(BOOL success) {}];Wie Basisanwendung von Erweiterung in iOs

aber es funktioniert nicht. hier ist info.plist in Basis App

hier info.plist in IMessages Erweiterung ist

Bin ich falsch, etwas zu tun?

Antwort

0

Eigentlich fand ich die richtige Antwort. Ich öffnete Basis-App von einem anderen ViewController mit der ExtensionContext-Eigenschaft von MSMessagesAppViewController, aber diese ViewController präsentierte auf der rootVC. Es passiert, dass rootVC URLs sehr gut öffnet, aber andere nicht. Also fordere ich einfach meine rootVC auf, die URL mit extensionContext zu öffnen.

2

Sie können diese Funktion verwenden.

UIApplication.shared.open(url, options: [:], completionHandler: nil) 

Aber jetzt erhalten Sie Compiler Fehler. Um den Compilerfehler zu beheben, tun Sie dies. Setzen Sie Require Only App-Extension-Safe API auf NO in den Build-Einstellungen Ihrer Erweiterung.

enter image description here

+0

Hallo, ich habe getan wie du gesagt hast und es funktioniert, aber ist das normal? Ich meine, es ist Erweiterung, wie kann es UIApplication-Klasse verwenden? Kann es auch Probleme beim Release-Build geben? – passingnil

+0

Ich glaube nicht, dass es irgendwelche Probleme geben wird. – Bilal

Verwandte Themen