Max1809
Fortgeschrittenes Mitglied
- 6
Guten Abend zusammen,
sagt mal, beendet "startService()" bestehende Services der Klasse automatisch, oder muss ich mich darum kümmern?
Szenarion: Mein Anwender kann die Häufigkeit der Aktualisierungen durch den Service selbst setzen. (das Interval)
Wenn er die Häufigkeit ändert, dann starte ich den Service mit dem neuen Interval neu.
Nun lasse ich mir über folgende Methode die Anzahl der laufenden Services wiedergeben und die beträgt 2:
Nun ... ich beende allerdings den Service auch manuell über "stopService()".
Habt ihr evtl. Tipps, wieso da zwei mal der Service läuft?
sagt mal, beendet "startService()" bestehende Services der Klasse automatisch, oder muss ich mich darum kümmern?
Szenarion: Mein Anwender kann die Häufigkeit der Aktualisierungen durch den Service selbst setzen. (das Interval)
Wenn er die Häufigkeit ändert, dann starte ich den Service mit dem neuen Interval neu.
Nun lasse ich mir über folgende Methode die Anzahl der laufenden Services wiedergeben und die beträgt 2:
Code:
private boolean isMyServiceRunning() {
ActivityManager manager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);
Integer temp = 0;
for (RunningServiceInfo service : manager
.getRunningServices(Integer.MAX_VALUE)) {
if (CustomService.class.getName().equals(
service.service.getClassName())) {
temp++;
}
}
Log.d("my_service", "Anzahl laufende Service: " + temp.toString());
for (RunningServiceInfo service : manager
.getRunningServices(Integer.MAX_VALUE)) {
if (CustomService.class.getName().equals(
service.service.getClassName())) {
Log.d("my_service", "Service läuft ...");
return true;
}
}
Log.d("my_service", "Service läuft nicht ...");
return false;
}
Nun ... ich beende allerdings den Service auch manuell über "stopService()".
Habt ihr evtl. Tipps, wieso da zwei mal der Service läuft?