Ich entwickle Browser-Push-Benachrichtigungen mit FCM. Ich habe den Beispielcode aus dem Schnellstart kopiert ( Ссылка ). Nachrichten werden empfangen und angezeigt, wie sie sein sollten. Aber wenn ich versuche, die Nachricht im Service Worker (messaging.setBackgroundMessageHandler) zu ändern, passiert nichts. Der Service-Mitarbeiter wird aufgerufen, und wenn ich einen Ereignis-Listener in diesem Service-Mitarbeiter für die Push-Benachrichtigungen implementiere, fängt er das Ereignis ab. Aber die Methode setBackgroundMessageHandler wird nie aufgerufen. Ich versuche dies auf Chrome 54.
Irgendwelche Ideen, was ich tun muss, um die Nachricht im Service-Mitarbeiter anzupassen?
Vielen Dank!
Wenn Sie versuchen, eine Push-Nachricht zu senden, tun Sie das, während Ihre App im Fokus ist oder nicht? In der Dokumentation heißt es nämlich, dass setBackgroundMessageHandler nur aufgerufen wird, wenn die Webanwendung geschlossen ist oder sich nicht im Browserfokus befindet .
Basierend auf dem Beispielcode aus dem Schnellstart ( Ссылка ).
Wenn Ihre App im Fokus ist: Die Push-Nachricht wird über messaging.onMessage () auf der index.html
empfangen
Wenn Ihre App keinen Fokus hat: Die Push-Nachricht wird über setBackgroundMessageHandler () in der Service-Worker-Datei empfangen.
Tags und Links firebase service-worker firebase-cloud-messaging