Frage

Ich möchte Teilen Sie Textdaten zwischen zwei iPhone-Apps.Wie kann ich für diesen Zweck Kleisterkarton verwenden?Kann mir jemand mit einem Beispielcode helfen?Dank im Voraus.Schlagen Sie mir vor, ob es bessere Möglichkeiten als Pappe gibt, um meine Aufgabe zu erledigen.

War es hilfreich?

Lösung

Wenn Sie nur IPC verwenden möchten, lassen Sie beide Apps ein URL -Schema erkennen. Dann ruf an

[[UIApplication sharedApplication] openURL:
  [NSURL URLWithString:@"theOtherApp://dataToShare"]];

zu senden und zu verwenden -application:handleOpenURL: bekommen.


Verwenden Sie zum Teilen von Saiten über das Pasteboard

 UIPasteboard* board = [UIPasteboard generalPasteboard];
 board.string = @"Some string to share";

zu speichern und zu verwenden board.string Als Getter, um die Zeichenfolge zu teilen, um sie zu teilen. Wenn der Benutzer jedoch etwas zwischen Ihren gemeinsam genutzten Daten kopiert, gehen Sie verloren.


Alternativ können Sie Sachen über:

  • Adressbuch. Erstellen Sie einen Dummy -Kontakt und verwenden Sie ihn zum Teilen.
  • Schlüsselbund. Machen Sie einen gemeinsam genutzten Schlüsselbundstück. 3.x nur.
  • Lesen/Schreiben aus gemeinsam genutzten Ordnern. /var/mobile/Library/AddressBook und Keyboard und Preferences Kann auch dann zugegriffen werden, wenn Ihre App sandboxiert ist. Dies kann jedoch gegen die SDK -Regeln verstoßen.

Andere Tipps

Du könntest benutzen benutzerdefinierte URL-Schemata um zwischen Ihren Apps zu kommunizieren.

Ich würde die Zwischenablage des Benutzers nicht verschmutzen, es sei denn, er möchte ausdrücklich etwas in die Zwischenablage kopieren – stellen Sie sich die Frustration vor, einen Textausschnitt in der Zwischenablage zu speichern und ihn dann von einer App überschreiben zu lassen, nur um Daten an eine andere App zu senden ...Keine gute Benutzererfahrung.

Aktualisieren:

Als @ohhorob kommentiert, es ist möglich, benutzerdefinierte Pasteboards zu erstellen.Wenn Sie Daten über das Pasteboard teilen möchten, stellen Sie sicher, dass Sie Ihr eigenes (persistentes) Anwendungs-Pasteboard erstellen und dieses anstelle des Haupt-Pasteboards verwenden.Sehen Hier für mehr Informationen.

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