Android In Service überprüfen ob eine Activity gebunden ist?

Stroker89

Bekanntes Mitglied
Hallo ich habe ein kleines Problem mit meinem BroadcastReceiver.

Activity 1 sendet einen Broadcast zu einem Service. Der sendet über einen Thread eine Nachricht an den Server. Server seendet Response zum Thread, dann wieder zum Service zurück.
Der Service soll jetzt den Response per Broadcast zu Activity 2 schicken.

Das Problem besteht jetzt darin, dass ich nicht weiß ob Activity 2 überhaupt schon existiert. Es wäre natürlich sehr blöd wenn der Response vom Service ins Nirvana geht.

Wäre dankbar für ein paar Tipps.


Gruß Martin
 

mjdv

Bekanntes Mitglied
Es gibt Sticky Broadcasts, allerdings habe ich mit denen sehr schlechte Erfahrungen gemacht und ich glaube auch, dass in der Android Dokumentation steht, das man diese nicht nutzen sollte.+

Du könntest dir im Service merken, ob sich eine Activity zu dir "verbunden hat". Das geht zB. in onBind(), dann musst du aber in der Activity auch bindService aufrufen.
 

Stroker89

Bekanntes Mitglied
Es ist ein LocalService und ich benutze in jeder Activity bindService().
Das onBind() funktioniert leider nur bei der ersten Activity...
Bei jeder weiteren wird diese Methode leider nicht mehr aufgerufen.

Gruß
 

mjdv

Bekanntes Mitglied
Okay, dass wusste ich nicht. Das ist natürlich etwas blöd.

Das einzige was mir jetzt einfallen würde, ist wenn du dir das selber ein wenig nachbaust. Also über den IBinder mit dem Service kommunizierst und dann so eine Funktion wie addActivity aufrufst. Dann weiß der Service, das diese Activity über Neuigkeiten benachrichtigt werden will.

Vielleicht hat aber schlingel auch noch eine bessere Idee :D
 

Stroker89

Bekanntes Mitglied
Ich habe eh schon so ein kleines System gebaut, dass der Service weiß von welcher Activity der Broadcast war und wer den passenden Response bekommen soll. Nur ist es halt echt doof, da ich halt nicht garantieren kann, dass die Activity schon existiert, da der Socketthread ja nie gleich schnell läuft...
 

mjdv

Bekanntes Mitglied
Ich habe eh schon so ein kleines System gebaut, dass der Service weiß von welcher Activity der Broadcast war und wer den passenden Response bekommen soll. Nur ist es halt echt doof, da ich halt nicht garantieren kann, dass die Activity schon existiert, da der Socketthread ja nie gleich schnell läuft...

Ja richtig, aber dann hat sich die Activity ja auch noch nicht angemeldet. Dann musst du die Nachrichten zwischenspeichern und dann schicken, wenn die Activity sich angemeldet hat.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
W Wieso gehen Log nicht im Service? Android & Cross-Platform Mobile Apps 20
W Background Service Daten verarbeiten/Schleife ect. Android & Cross-Platform Mobile Apps 1
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 Kommunikation zwischen UI -> Service -> Thread Android & Cross-Platform Mobile Apps 4
C Android Kommunikation zwischen Service und Activity Android & Cross-Platform Mobile Apps 8
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
L Android Wie erstelle ich eine dynamische Tabelle (TableLayout)? Android & Cross-Platform Mobile Apps 2
W Zur Laufzeit erstelltes MenuItem an eine View binden Android & Cross-Platform Mobile Apps 1
J Android Zugriff auf eine Datei, diese von einer anderen App erstellt wurde? Android & Cross-Platform Mobile Apps 11
W Pixel Farbe in eine andere Farbe ändern im ImageView von ein Icon Android & Cross-Platform Mobile Apps 14
S Sinnvollste weg eine SQLite DB mit Android auslesen Android & Cross-Platform Mobile Apps 7
L Regelmäßig eine Methode im Hintergund ausführen Android & Cross-Platform Mobile Apps 1
J Android Wann ist eine App privat? Android & Cross-Platform Mobile Apps 10
M Android Schreiben von JsonDaten in eine SqliteDB Android & Cross-Platform Mobile Apps 7
M Suche eine Webseite mit dem aktuelle Datum in XML Android & Cross-Platform Mobile Apps 18
R Android Eine Website-frame in einer App Android & Cross-Platform Mobile Apps 4
Robat Android Wie mache ich eine App mit verschiedenen Leveln? Android & Cross-Platform Mobile Apps 8
M [Android] Wie erstellt man eine Verknüpfung eines Ordners? Android & Cross-Platform Mobile Apps 7
R [ANDROID] Dynamisch eine Liste erweitern Android & Cross-Platform Mobile Apps 3
K Verständisfrage bzgl. Buttons und ihnen eine Funktion geben. Android & Cross-Platform Mobile Apps 3
X Android Wo gibts eine SortableListView? Android & Cross-Platform Mobile Apps 6
G eine Methode einer anderen Activity aufrufen Android & Cross-Platform Mobile Apps 9
B TableLayout verhält sich nicht wie eine Tabelle Android & Cross-Platform Mobile Apps 3
L Android Eine Kleinigkeit für Profis Android & Cross-Platform Mobile Apps 2
A Android Eine Datei in Android löschen, aber wie ? Android & Cross-Platform Mobile Apps 24
A Koordinaten eine Images feststellen Android & Cross-Platform Mobile Apps 9
U [Android] Eine Datei aus Jar-Archiv laden Android & Cross-Platform Mobile Apps 4
N Gibt es eine opensource Speech-to-Text engine? Android & Cross-Platform Mobile Apps 3
B Android Eine Warnung in der Console (Eclipse) auswerten Android & Cross-Platform Mobile Apps 3
T Android Ergebnis eines XML+XSLT "transform" in eine HTML - Datei schreiben (Android) Android & Cross-Platform Mobile Apps 2
M Eclipse: cdc.jar in eine Midlet Suite integrieren Android & Cross-Platform Mobile Apps 18
L SecurityException beim lesen/schreiben eine Datei Android & Cross-Platform Mobile Apps 7
H Gibt es eine Alternative zur Location API? Android & Cross-Platform Mobile Apps 4
F Wie komplex wäre eine Wecker-Applikation? Android & Cross-Platform Mobile Apps 5

Ähnliche Java Themen

Neue Themen


Oben