Ich mochte eine Anwendung schreiben die sowohl auf einem Windows Laptop als auch auf Android und IOs Geräten läuft.
Fand hier MAUI sehr nett. Hab mich aber noch nicht festgelegt.
Im Moment bin ich auf der Suche nach einer Technologie die es mir ermöglicht, mit mehreren Clients meiner Software innerhalb eines Lan (Wlan) zu kommunizieren.
Ich möchte eine App die auf allen gängigen Plattformen läuft. Eine Instanz mach einen Server auf, die andere Verbinden sich dann damit.
Es währe auch nett wenn die Kommunikation später auch über einen Server im Internet laufen könnte.
Ich möchte vom Server dann Daten und Bilder übertragen und dann die Anzeige des Bildes (Zoom Position) auf dem Clients steuern.
SignalR hat sich hier als nette Technologie gefunden. Nur leider scheint hier immer ein asp.net host von Nöten zu sein. Sprich die Software könnte den Server nicht auf Android starten?
Habt Ihr hier ein paar Denkansätze für mich oder eventuell eine völlig andere Technologie die hier in frage kommen würde?
Nice währe wenn man einen SignalR Hub auch direkt in einer MAUI App im Hintergrund starten könnte. Aber zu der Idee find ich keine Beispiel,
Eventuell weil es einfach nicht geht 😃
Hallo sbsbsbsb,
wenn die Kommunikation später auch über einen Server im Internet laufen könnte
Da hast du zwei eher gegensätzliche Anforderungen:
Ich würde mich gleich für letzteres entscheiden (unter der Annahme dass die Anzahl der Clients nicht sehr groß sein wird), da so auf dem Server z.B. SignalR laufen kann (ASP.NET Core). Die Clients sind dann flexibler, denn existiert für viele Plattformen entsprechende Client-Libraries.
Alternativ kann auch gRPC mit Streaming verwendet werden, dort existieren für noch mehr Plattformen die Libraries.
Mit gRPC wäre auch das Peer-to-Peer artige Szenario möglich.
Allerdings sind hier Sachen wie Broadcasts etwas schwieriger umszusetzen als bei SignalR.
Möglich wäre auch etwas eigenes basierend auf UDP zu erstellen, sofern die Nachteile von UPD (bitte selbst recherchieren) nicht gravierend sind.
Eine Instanz mach einen Server auf
Hört sich erstmal recht einfach an, aber zuverlässige Leader Election ist nicht so trivial wie es klingt.
Das ist mit ein Grund warum ich Cleint-Server-Architektur bevorzugen würde.
mfG Gü
Stellt fachliche Fragen bitte im Forum, damit von den Antworten alle profitieren. Daher beantworte ich solche Fragen nicht per PM.
"Alle sagten, das geht nicht! Dann kam einer, der wusste das nicht - und hat's gemacht!"