Wir entwickeln derzeit eine App, die eine Art "Add-on" -App für unsere Haupt-App ist, um ihre Möglichkeiten zu erweitern.
Wir haben uns gefragt, ob es eine einfache Inter-App-Kommunikation auf demselben Gerät gibt (im Internet gibt es dazu nichts). Unser erster Gedanke war, einen Server-Socket in unserer Add-on-App zu erstellen und Daten von der Haupt-App dorthin zu senden.
Hier ist C # -Code für Server:
%Vor%Und für den Kunden:
%Vor%Es scheint nicht zu funktionieren, weil wir unsere Haupt-App konzentrieren, scheint die Add-on-App aufhören zu hören.
Ist dies eine allgemeine Art der Kommunikation zwischen diesen beiden Apps (immer auf demselben Gerät) oder müssen wir eine separate Lösung entwickeln? Wenn separate Lösungen, was ist die beste Lösung für iOS? Android ? Wir haben Xamarin für unsere Add-on-App verwendet, und derzeit zielen wir nur auf iOS und Android ab.
Hinweis: Da es sich um dasselbe Gerät handelt, möchten wir den entfernten Webservice nicht zur Kommunikation verwenden.
Nach vielen Suchen scheint die einzige "plattformübergreifende" Lösung Url Scheme zu sein.
Für iOS: Ссылка
Für Android: Ссылка
Es scheint, dass Android 1 MB Daten verarbeiten kann, die in einer Absicht übergeben werden, und iOS kann so viel wie der Systemspeicher in URL verarbeiten. Wir werden base64url Daten kodieren, um sie für iOS zu übergeben und fügen sie als base64 in das extraString Array von intent für Android ein.
Wir müssen eine Android-Aktivität und einen iOS ViewController erstellen, um die Anrufe der Url zu bearbeiten. Dies ist also plattformspezifisch, aber die wichtigsten Informationen können zwischen den Plattformen geteilt werden.
Dadurch muss unsere Add-on-App keine Erweiterung der iOS-App sein und kann ihre eigene Benutzeroberfläche und Bildschirme haben.
Tags und Links android c# ios xamarin.ios xamarin