2016-06-21 4 views
-1

Ich arbeite an einer App, die als ein Dashboard für eine in Autos und Lastwagen installierte elektronische Karte fungieren wird.Machen Sie eine Android-App Daten von einer nicht-Android-App mit Wifi

Ich brauche die Anwendung, um Daten von dieser Karte empfangen zu können, damit ich sie auf verschiedene Arten in der App anzeigen kann. Wir wählten Wifi für die Kommunikationsmethode. Um auf die Karte zugreifen zu können, ist meine App in der Lage, sich mit einem von ihr erstellten Wifi-Netzwerk zu verbinden.

Ich möchte JSON jede Sekunde von der Karte gesendet erhalten. Ich brauche Hilfe, wo ich anfangen soll, um die beiden Geräte zu kommunizieren, und was sind die guten Praktiken bei der Implementierung dieser Art von Kommunikation. Die App fungiert grundsätzlich als Client und die Karte als Server. Ich habe etwas über Sockets gefunden, aber es schien zwei Android-Geräte zu verwenden, einen Server und einen Client, also bin ich hier irgendwie festgefahren.

Ich verwende Android Studio 2.1.2 mit den Android-APIs von 19 bis spätestens.

Antwort

0

Eine Option besteht darin, die Daten im lokalen Netzwerk mit UDP zu übertragen. In dem Moment, in dem sich das Android-Gerät mit dem WLAN-Netzwerk verbindet, befindet es sich in seinem lokalen Netzwerk. So können die Daten am Android-Ende mit einem Multicast-Empfänger empfangen werden (siehe http://jgroups.org/).

Refer example

Es kann auch das p2p-Sharing mit TCP verwenden und das Gerät mit statischen IP-Adressen für die Kommunikation binden. Erstellen Sie einen einfachen Socket-Empfänger am Android-Ende und einen Dienst am Gerät. Hängt davon ab, wie Sie es wählen.

+0

Vielen Dank für Ihre Antwort. Ich werde versuchen, beide Wege zu erkunden. Auch habe ich nicht die Unterschiede zwischen Wi-Fi-Übertragung und Wi-Fi Direct-Übertragung. Wäre der eine oder andere für diesen Ansatz besser geeignet oder völlig irrelevant? –

+0

Es ist völlig irrelevant. Wenn Sie Daten übertragen, müssen Sie einem Protokoll folgen. Und kennen Sie das Gerät im Netzwerk, an das Sie es senden. Für udp nicht zu wissen funktioniert auch. Der beste Weg wäre, in die Möglichkeiten einzutauchen, wie Sie den Service erstellen und die App nutzen können. – Dextro67

+0

Nochmals vielen Dank für Ihre Antwort. Dank Ihres Ratschlags ist es uns gelungen, eine Hello World von der Karte auf das Gerät zu bekommen. Nun, um kompliziertere Dinge zu senden;) –

Verwandte Themen