Frage

Problem:


Aufbau von Unternehmensanwendungen einer Suite -Art und müssen in der Lage sein, Daten von einer Anwendung an eine andere weiterzugeben. Beispiel: App1 ist ein Barcode -Leser, der die Liste erstellt und befindet. App2 benötigt eine "frische" Kopie derselben Inventarlisteninformationen, die App1 gerade erstellt hat, um sein Ziel zu erreichen, Bestellungen zu erstellen. Die beiden Apps und Datenbanken sind zwei große, um sie in einzelnen Apps zusammenzudrücken, und die Suite wächst weiter mit immer mehr Apps.


Verständnis:


Ich verstehe voll und ganz, dass "jede" Anwendung in ihrer eigenen Sandbox ist. Beim Lesen der Dokumente bezüglich der neuen UidocumentInteractionController-API scheint jedoch eine Anwendung außerhalb der Sandkasten ein wenig zu "lesen", "Ansicht" oder "Open-In" ein Dokument, das nicht voneinander entfernt war des Bundle oder in der Anwendung erstellt.


Datenfluss:


Ich versuche es einfach zu halten. Ich habe die von Apple heruntergeladene docinteraction -Beispielanwendung und eine andere Anwendung verwendet ... App1 genannt, um zu versuchen, mit einer einfachen Textdatei zu arbeiten. In App1 erstelle ich eine einfache TXT -Datei und speichere sie im Ordner Dokumente. (Aber das ist immer noch in der Sandbox der App?). In der docinteraction-modifizierten Stichprobe habe ich versucht, eine Möglichkeit zu "anzeigen", "Open-In" oder besser noch "lesen" in der erstellten TXT-Datei. Wenn ich eine einfache TXT -Datei zwischen den beiden übergeben kann, kann ich eine CSV -Struktur einfügen, um die Datenbanken auf jeder Seite zu aktualisieren, wenn die Anwendungen geöffnet werden.

Ich habe versucht, die Tasten für Startoptionen ohne Glück zu nutzen.

Kurz gesagt, ich kann einfach nicht meinen Kopf herumkommen:

  1. Wo müssen die Daten von App1 gehen?
  2. Wie finde ich die Daten in der anderen App, sagen wir App2?
  3. Wie "öffnen" Sie die Datei, die in Sandbox einer anderen Anwendung vorhanden ist?

Endergebnis: Ich habe versucht, mich von der fernzuhalten

Die Dokumentinteraktionsdokumente umrissen:

  • Vorschau eines Dokuments oder Präsentationsoptionen
  • Registrieren Sie Ihre Unterstützung von Dateitypen
  • Öffnen von Dateien aus anderen Apps
  • Anzeigen und Druck von schnellen Look -Voransichten

Es ist der "Öffnen von Dateien aus anderen Apps"Das interessiere mich am meisten. Es weist mich an, die Anwendung zu nutzen: didfinishlaunchingwithOptions: Methode, indem ich Wörterbuchwerte für die Schlüssel weitergibt. Hier gehe ich verloren? Wie setze ich die Tasten so, dass es" wo "und" und "und" und "und" und "und" und "und" und "und" und "und" und "und" und "und" und "und" und "und" und "und" und "und" und "und" und "und" und "und" und "und" und "und" und "und" und "und" und "und" und "und" und "und" und "und" und "und" und "und" und "und" und "und" und "und" und "und" und "und" und "und" und ". "Was" suchen? Und ich bin immer noch nicht klar, dass App1 Informationen speichern sollte, damit die Schlüssel auf die richtige Stelle hinweisen?


Das Öffnen von E-Mail-Dateianhängen und das Öffnen von PDFs in iBooks können nicht die einzigen Orte sein, an denen Sie diese API verwenden können. Andernfalls hätte Apple nicht die gesamte Arbeit durchlaufen. Sie können bereits von App-to-App sprechen.


Notiz: Ich versuche nicht, App1 direkt in die Dateien von App2 zu übertragen. Ich glaube nicht, dass das Apple überhaupt erlaubt wäre! Ich versuche, App1 dazu zu bringen, seine Daten aufzuteilen, sie an ordnungsgemäßem Ort zu speichern. Wenn der Benutzer sich also für die Verwendung von App2 beschließt, können die Daten für App2 durch "Lesen" der Daten zur Verfügung stehen.


Wenn jemand eine Beispielanwendung, ein Tutorial oder sogar eine solide Idee hat, wie man dieses funktioniert, würde ich die Hilfe wirklich schätzen.

-Vielen Dank!

PS Jemand mit 1.500 oder höherem Ruf. Bitte erstellen Sie ein "uidocumentInteraction" -Tag für stackoverflow!

War es hilfreich?

Lösung

Ich habe es letzten Monat zum Laufen gebracht. Hier ist mein mentales Modell:

App1 erstellt eine Datei überall in seiner Sandbox.

App1 ruft Docinteraction auf, um die GUI "Open in" GUI für diese Datei anzuzeigen

Benutzer wählt "in App2 geöffnet"

Die iOS kopiert die Datei von einer Sandkiste zum anderen und startet App2.

App2 implementiert didfinishlaunchingwithurl und lädt die mitgelieferte URL (die Kopie in seiner Sandbox ist)

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top