2017-11-20 2 views
2

Ich versuche zu verstehen, wie Android-Apps Benachrichtigungen anzeigen können, ohne gestartet zu werden. (auch nach Kraftschluss)Wie Anwendungen Benachrichtigungen anzeigen, wenn sie geschlossen sind

Gibt es nur einen Weg mit Firebase oder anderen Cloud-Nachrichtendiensten? (Push-Benachrichtigungen)

Jetzt denke ich über Alarmmanager, aber es funktioniert nicht, wenn App Kraft geschlossen ist.

+1

benötigen Sie einen Dienst, um das zu tun. weil das immer funktioniert. Selbst wenn Sie erzwingen, schließen Sie Ihre App. –

+0

aber Service in separaten Thread wird große Textzeile über "Service ist aktiv bla bla" zeigen, ich habe so etwas in modernen Apps nicht gesehen. das ist warum ich interessiert – Vadim

+0

@Vadim wenn Sie möchten, dass Ihr Dienst in 'Vordergrund' als nur es würde erfordern Sie eine Benachrichtigung zu platzieren, aber wenn Sie möchten, dass Ihr Dienst nur Benachrichtigung senden, können Sie nur' Start_Sticky' in ' onStartCommand' von Ihrem 'Service' und es würde seine Aufgabe gut machen, auch wenn Ihre App geschlossen ist. Und 'Service' läuft in MAIN THREAD. –

Antwort

1

Wenn Ihre App mit jedem Broadcast-Receiver registriert ist, das ist der Grund App ist in der Lage Push-Benachrichtigung zu zeigen, auch die APP ist Kraft geschlossen. In diesem Fall wird auch die App zwangsweise geschlossen, ihre Callback-Methode onReceive() wird aufgerufen. Dies ist der übliche Weg, wo Benachrichtigungen generiert werden. Soweit Alarm Manager betroffen ist, ist das nicht app abhängig. Es ist auf Betriebssystemebene registriert. Sobald der Alarmmanager registriert ist, ist es egal, ob die App ausgeführt wird oder ob die App geschlossen wird. Der Alarmmanager ruft seine PendingIntent an, die registriert wurde, als der Alarmmanager erstellt wurde. Und das PendingIntent ist verantwortlich für starten App-Komponenten wie Service oder andere Broadcast Receiver .Hope, die Ihnen in Ihrem Verständnis hilft.

+0

Bedeutet dies, dass ich Alarmmanager und Broadcast Receiver erstellen kann, um Benachrichtigungen anzuzeigen und regelmäßig Aufgaben auszuführen? Weil ich jetzt nur sehe, dass der Alarm ausgelöst wird und nichts passiert, wenn die App vollständig geschlossen ist. – Vadim

+0

ja, das kannst du tun. –

Verwandte Themen