Kann ich eine iOS 8 Action Extension verwenden, um einen ausgewählten Text vom Safari-Browser an eine installierte App zu senden? Ich denke über diesen Workfow nach: Der Benutzer würde einen Text in einer Website auswählen & gt; auf das Share-Symbol tippen & gt; die installierte App (nicht nur der Freigabe-Dialog) wird mit dem ausgewählten Text geöffnet.
Da alle Erweiterungen auf dem iPhone wie mit der Haupt-App ausgeführt werden. Sie können etwas wie App-Gruppe verwenden, um die Informationen zu teilen.
Sie müssen also die App Group-Funktion in beiden Zielen aktivieren und Informationen mit UserDefault (suiteName :) teilen oder das gemeinsame Containerdateiverzeichnis verwenden (bei gemeinsam genutzten Containern benötigen Sie möglicherweise einen Dateikoordinator, damit 2 Prozesse die Datei nicht verwenden Zeit).
Wenn beide Prozesse ausgeführt werden, können Sie darüber hinaus mithilfe der Darwin-Benachrichtigung dem anderen mitteilen, dass neue Informationen aktualisiert wurden.
Ich denke, was du versuchst zu tun ist:
Leider denke ich, dass das nicht möglich ist. Sie können eine Erweiterung erstellen, um den ausgewählten Text zu akzeptieren. Die App wird jedoch nicht vollständig geöffnet, sondern nur durch die Erweiterung.
Das Problem ist, dass es beim Markieren von Text in Safari keine "Öffnen in ..." -Auswahl gibt (im Vergleich zum Beispiel "Öffnen in ...", wenn Sie eine Datei in der Dropbox-App auswählen) / p>
Soweit ich die Funktionalität verstehe (und um ehrlich zu sein, habe ich nicht zu weit hinein gegraben, damit ich falsch liege), wenn Sie in Safari auf das Freigabe-Menü klicken (sei es das aus der schwarzen Popup-Blase) Wenn Sie den Text oder die Schaltfläche aus der unteren Symbolleiste auswählen, wird eine "einmalige" Erweiterung ausgelöst, mit der Sie eine bestimmte Aktion ausführen können (z. B. Senden der Auswahl über Nachrichten, E-Mail oder Einfügen in Ihre Notizen). Nachdem die Erweiterung ausgeführt wurde, kehrt sie dorthin zurück, wo sie gefeuert wurde (was Safari bedeutet).
Auch dies unterscheidet sich von der Funktion "Öffnen in ...", für die Sie benutzerdefinierte URL-Schemas implementieren müssen, auf die Ihre App achten soll. Aber das funktioniert nicht mit einfacher Textauswahl. Es würde ein echtes URL-Schema benötigen.
Vielleicht hilft Ihnen diese Frage, ein besseres Verständnis zu bekommen: iOS Share vs Action App Extension
Zusammenfassend: Was Sie versuchen, ist unter iOS wahrscheinlich nicht möglich.
Mögliche Idee: Sie könnten irgendwie versuchen, der sharing-Erweiterung eine Schaltfläche hinzuzufügen, die ein benutzerdefiniertes URL-Schema mit dem ausgewählten Text generiert und das System auffordert, die URL zu öffnen, aber ich kann mir vorstellen, dass dies nicht wirklich funktioniert >
Sie müssen NSExtensionActivationSupportsWebURLWithMaxCount aktivieren, um die Erweiterung in Safari verfügbar zu machen.
Wenn Sie aus der Vorlage ein Ziel für die Erweiterung einer Nicht-UI-Aktion erstellen, wird automatisch eine Action.js-Datei erstellt. Bearbeiten Sie die Datei, um den ausgewählten Text mit
zurückzusenden %Vor%Tags und Links ios ios8 safari ios-extensions