Funktioniert der AlarmManager, wenn meine Anwendung nicht läuft?

8

Ich habe einen Alarm, der gut funktioniert, wenn ich mit meiner Anwendung interagiere, aber es funktioniert nicht, wenn ich es für den nächsten Tag einstelle und nicht mit meiner App interagiere. Daher bekomme ich Zweifel, weil dies mein Bewerbungsprozess ist läuft zu dieser Zeit nicht.

hier mache ich was

%Vor%     
Shakeeb Ayaz 07.11.2013, 04:47
quelle

4 Antworten

14

Von AlarmManager

AlarmManager bietet Zugriff auf die Systemalarmdienste. Damit können Sie planen, dass Ihre Anwendung irgendwann in der Zukunft ausgeführt wird. Wenn ein Alarm ausgelöst wird, wird der Intent , der für ihn registriert wurde, vom System gesendet und startet automatisch die Zielanwendung, wenn sie nicht bereits ausgeführt wird. Registrierte Alarme bleiben erhalten, während sich das Gerät im Ruhemodus befindet (und können das Gerät optional wecken, wenn sie während dieser Zeit ausgeschaltet werden), werden jedoch deaktiviert, wenn es ausgeschaltet und neu gestartet wird.

In einfacher Weise wird es funktionieren, bis Ihr Gerät neu gestartet wurde.

Sie können Android AlarmManager nach dem Neustart lesen, wo @CommonsWare einen Link von ihm erhalten hat Beispielanwendung, die persistent bleibt Alarm auch nach dem Neustart des Geräts.

Bitte ignorieren Sie unten den Abschnitt, es scheint nicht gültig. Ich werde in Zukunft entfernen

Sie können mehr über die Anwendung kill in So erstellen ein persistenter AlarmManager und Wie kann der Alarm nach dem Beenden der App gespeichert werden? kann Ihnen die Idee geben, wie Sie mit einem solchen Problem umgehen können (um einen Alarm zu erhalten, wenn die Anwendung beendet wurde) .

    
Pankaj Kumar 07.11.2013, 04:50
quelle
3

Ja, es hat funktioniert, aber das richtige Verständnis siehe doc.

Hinweis: Der Alarm Manager ist für Fälle vorgesehen, in denen Sie Ihren Anwendungscode zu einem bestimmten Zeitpunkt ausführen möchten, auch wenn Ihre Anwendung gerade nicht ausgeführt wird. Für normale Timing-Vorgänge (Ticks, Timeouts usw.) ist es einfacher und viel effizienter, Handler zu verwenden.

siehe hier Ссылка

    
Hardik 07.11.2013 04:51
quelle
2

Wir müssen unsere App im Autostart-Manager im App-Manager aktivieren, einige Mobilteile wie Vivo v5,

In Vivo v5 können wir dieses Menü in

finden %Vor%

Dann löst Ihr Alarm- / Alarmmanager einen Alarm aus, wenn die App beendet oder geschlossen wird.

    
Aneesh NN 26.02.2017 12:57
quelle
1

Sehen Sie sich die AlarmManager-Dokumentation an ..

Ссылка

Ich sehe nirgendwo, wo angegeben wird, dass das Löschen Ihrer App alle Alarme löscht, die von dieser App geplant wurden. Genauer gesagt heißt es, wenn Ihre App nicht gestartet wurde, wird sie für Sie gestartet.

Ich habe meine eigenen Tests gemacht und kann dies durch .. bestätigen.

  • Einstellen eines Alarms 5 Sekunden in der Zukunft.
  • Dann schließt App von recents.
  • Dann schaue ich mich an, um meine Sendung zu empfangen.
  • Denken Sie daran, dass dies mit einer unterzeichneten apk getan wurde.

    %Vor%

Ich denke auch daran, was Pankaj Kumar über den Neustart von Alarmen beim Booten gesagt hat. Dies ist der einzige Ort, den Sie selbst abdecken müssen, da der AlarmManager alle Alarme beim Neustart des Geräts löscht.

    
Aaron Smentkowski 15.03.2017 00:28
quelle