Android Kommunikation zwischen UI -> Service -> Thread

S

Stroker89

Bekanntes Mitglied
Hallo Leute,

habe ein Problem mit der Kommunikation bzw. dem Senden von Nachrichten/Daten zwischen UI-Thread -> Service -> Thread

Folgendes Szenario,

In der UI ist ein EditText und ein Button. Beim Starten der UI wird ein Service gestartet, der wiederrum einen Thread für eine Socketverbindung aufmacht und offen lässt solang die App nicht destroyed wird. Soweit so gut.

Kommunikation zwischen Service - Thread findet mittels eines Handler statt. Der Service Broadcastet dann zu der UI das Ergebnis zurück.

Jetzt stellt sich mir aber die Frage wie ich Daten (EditText) zu dem Service bekomme um so die Daten über den Socketthread zu meinem Server zu schicken und das jedes mal wenn mein Button in der UI gedrückt wird.
Auf den Handler des Services hab ich ja von der UI keinen Zugriff soweit ich das mitbekommen habe.

Kann mir jemand eventuell auf die Sprünge helfen?

Gruß Martin
 
schlingel

schlingel

Gesperrter Benutzer
Du hast zwei Möglichkeiten mit dem Service zu kommunizieren:
1. Du bindest dich an den Service. Ist dann so ähnlich wie Remoting.
2. Du registrierst beim Service einen Broadcast-Receiver und schickst deine Requests aus der Activity per BroadcastIntent an den Service.

Ich mag die 2. Möglichkeit lieber, da mir die erste zu umständlich und zu träge ist.
 
S

Stroker89

Bekanntes Mitglied
Danke für deinen super Tipp. Habe es jetzt so gelöst, dass ich jeweils einen BroadcastReceiver in der Activity und dem Service registriert habe und im Service einen Handler habe und einen Handler in dem aufgerufenen Thread.

Die Kommunikation klappt tadellos.

UI -> Service ->Thread ->Server

UI<- Service<- Thread<- Server

Gruß Martin
 
M

mjdv

Bekanntes Mitglied
Wenn dann würde ich hier aber den LocalBroadcastManager benutzen. Warum solltest du eine Nachricht durchs ganze Android System schicken, wenn nur deine App Sie braucht?

Vielleicht willst du ja auch gar nicht, dass andere Apps (rein theoretisch) auch diese Nachrichten empfangen könnten.
 
S

Stroker89

Bekanntes Mitglied
Danke für diesen tollen Tipp :)

Der LocalBroadcastManager war mir gänzlich neu.

Gruß Martin
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
C Android Kommunikation zwischen Service und Activity Android & Cross-Platform Mobile Apps 8
? Android erstellen der grafischen Benutzeroberfläche und Kommunikation zwischen Apps Android & Cross-Platform Mobile Apps 8
G Android Kommunikation zwischen den Activities Android & Cross-Platform Mobile Apps 1
S Kommunikation im Hintergrund Android & Cross-Platform Mobile Apps 10
N Android Client-Server-Kommunikation: push oder poll? Android & Cross-Platform Mobile Apps 10
Fab1 Kommunikation Fernbedienung --> Smartphone Android & Cross-Platform Mobile Apps 5
Julius99 Android Distanz zwischen zwei Location Android & Cross-Platform Mobile Apps 12
U Telepräsenz zwischen Notebook und Roboter Android & Cross-Platform Mobile Apps 1
N Android Informationen zwischen Tabs austauschen Android & Cross-Platform Mobile Apps 2
M Android Kabellose Datenübertragung zwischen zwei Handys - Reichweiten Android & Cross-Platform Mobile Apps 3
K Android Datenaustausch zwischen zwei Fragments Android & Cross-Platform Mobile Apps 1
B Android Kollision zwischen 2 Bitmaps Prüfen? Android & Cross-Platform Mobile Apps 4
R Android Datenaustausch zwischen PC und Handy Android & Cross-Platform Mobile Apps 3
S Android "Weiches wechseln" zwischen Views in einer Activity Android & Cross-Platform Mobile Apps 3
M Daten zwischen mehreren Activities Android & Cross-Platform Mobile Apps 2
M Daten zwischen Activities übergeben Android & Cross-Platform Mobile Apps 7
S Android binäre Daten zwischen Android und einem Java-Server Android & Cross-Platform Mobile Apps 5
S Android Auf Funktionen zwischen Activitys zugreifen Android & Cross-Platform Mobile Apps 3
E Übergang zwischen 2 Activities Android & Cross-Platform Mobile Apps 1
G Bluetooth Verbindung zwischen Handy und PC Android & Cross-Platform Mobile Apps 5
T Unterschiede zwischen CrEme 4.1 und J9 6.1 Android & Cross-Platform Mobile Apps 3
O Bluetooth Verbindung zwischen 2 Handys Android & Cross-Platform Mobile Apps 5
T Diskrepanz zwischen SUN Toolkit und NOKIA 6610i Android & Cross-Platform Mobile Apps 3
D messages via xml zwischen server/clienthandy verschicken Android & Cross-Platform Mobile Apps 5
B Zufallszahlen zwischen 1 und 49 erstellen? aber wie? Android & Cross-Platform Mobile Apps 7
L Unzuverlässiger Service Android & Cross-Platform Mobile Apps 1
J Service starte nicht mehr Android & Cross-Platform Mobile Apps 13
J intend Service im Android Studio Android & Cross-Platform Mobile Apps 4
L Eingaben in der MainActivity einem Service übergeben Android & Cross-Platform Mobile Apps 0
L Prüfen ob Service läuft Android & Cross-Platform Mobile Apps 3
N Android Game Background Service Android & Cross-Platform Mobile Apps 11
Excess Android Service läuft nicht in Sandby weiter Android & Cross-Platform Mobile Apps 2
G GPS in einem Service abfragen Android & Cross-Platform Mobile Apps 2
D Java ME Bild vom Web-Service aus zurück geben Android & Cross-Platform Mobile Apps 8
T Android Datenbankverbindung in Service für Push Notification Android & Cross-Platform Mobile Apps 0
G Thread in einer Service erstellen Android & Cross-Platform Mobile Apps 0
S Android In Service überprüfen ob eine Activity gebunden ist? Android & Cross-Platform Mobile Apps 6
D Android selben Service mehrmals Aufrufen Android & Cross-Platform Mobile Apps 17
L Android Zugriff aus unbound Service auf Preferences Android & Cross-Platform Mobile Apps 2

Ähnliche Java Themen

Anzeige

Neue Themen


Oben