Ich benutze
alarmManager.setInexactRepeating(AlarmManager.ELAPSED_REALTIME, 0, DURATION, broadcast);
Zur Planung einer wiederkehrenden Aufgabe, die nur ausgeführt werden soll, wenn das Gerät nicht schläft. So wie ich das verstehe API auf dem AlarmManager wird die Absicht aufgerufen, sobald das Gerät aus dem Ruhezustand erwacht.
Und wann schläft ein Android-Gerät? Zum Testen habe ich die Dauer auf zwei Minuten eingestellt und das Gerät an meinen Rechner angeschlossen. Jetzt beobachte ich logcat und alle zwei Minuten spuckt es meine Debug-Meldung aus.
Ich dachte immer, dass ein deaktivierter Bildschirm bedeutet, dass das Gerät in den Ruhezustand geht. Oder hindert mein Blick auf die Debug-Ausgabe das Gerät am Schlafen? Ich habe auch die USB-Verbindung getrennt und mir das Protokoll nach einer halben Stunde angesehen, und ich konnte einen Aufruf meines Timer-Codes sehen, auch wenn das Display mehr als 15 Minuten lang dunkel war.
Wie kann ich überprüfen, ab welchem Zeitpunkt der Befehl nicht mehr ausgeführt wird und worauf sich das Einschlafen in der AlarmManager-Dokumentation bezieht? Gibt es eine Möglichkeit, der logcat-Ausgabe zu entnehmen, wann das Gerät zu schlafen begann?