2016-04-06 19 views
0

Ich muss Daten zwischen iOS Apps ohne Benutzerinteraktion freigeben.Starten Sie die iOS-Erweiterung ohne UI

Nach einigem googeln fand ich, dass die beste Möglichkeit dafür ist, Extension zu verwenden. Wie im Apple Extension Guide beschrieben, öffnen Benutzer die App-Erweiterung, indem sie mit einer vom System bereitgestellten Benutzeroberfläche interagieren. Ein Benutzer greift beispielsweise auf eine Freigabeerweiterung zu, indem er die vom System bereitgestellte Schaltfläche "Teilen" in einer App aktiviert und die Erweiterung aus der angezeigten Liste auswählt.

Meine Frage ist, können wir Share/action/documentProvider Erweiterung ohne UI-Taste zugreifen. Können wir anpassen, wie Erweiterungen gestartet werden?

Gibt es einen anderen gesicherten Weg für Inter-App-Kommunikation.

+0

Was ist der Grund für "ohne UI" Teil? Was willst du erreichen? – zcui93

+0

Ich möchte die Daten ohne Benutzerhinweis an andere App senden. Wir können Share-Taste haben, aber Share-Menü sollte nicht sichtbar sein. Ähnlich möchte ich die ganze Liste von Dateien haben, ohne die UIDocument-Auswahlansicht zu öffnen. – DRK

+0

Ihr entworfenes Verhalten kann dazu führen, dass die App abgelehnt wird. – zcui93

Antwort

1

Angenommen, dass alle an der Freigabe beteiligten Apps von Ihnen entwickelt/gesteuert werden, wäre der beste Weg, dies zu erreichen, ein shared container. Per Docs:

Die com.apple.security.application-Gruppen (erhältlich in OS X v10.7.5 und v10.8.3 und höher) können mehrere Anwendungen von einer einzigen Entwicklungsteam produziert Zugang zu einem besonderen teilen Gruppencontainer. Dieser Container ist für Inhalte gedacht, die nicht dem Benutzer zugewandt sind, z. B. gemeinsam genutzte Caches oder Datenbanken.

Zusätzlich erlaubt dieses Attribut den Apps innerhalb der Gruppe, Mach- und POSIX-Semaphore zu teilen und bestimmte andere IPC-Mechanismen unter den Mitgliedern der Gruppe zu verwenden. Weitere Informationen und Namenskonventionen finden Sie im App Sandbox Design Guide unter "Mach IPC- und POSIX-Semaphore und Shared Memory".