Ich folgte den Anweisungen auf firebase.google.com, um FCM in meinem Projekt hinzuzufügen.
Alles war gut, ich habe die Meldung "FirebaseApp Initialisierung erfolgreich" und frisches Token in meinen Protokollen. Aber es funktioniert nicht ... Nur die erste Push-Benachrichtigung, die ich an den Token sende, bekomme ich Erfolg. Der zweite Push and Rest erhält den Fehler "NotRegistered".
Dokumentation sagtFCM gibt Fehler zurück: NotRegistered nach der ersten Nachricht
Wenn es NotRegistered ist, sollten Sie die Registrierungs-ID von Ihrer Server-Datenbank zu entfernen, da die Anwendung von dem Gerät oder die Client-Anwendung konfiguriert wird nicht um Nachrichten zu empfangen deinstalliert wurde.
aber die Anwendung wurde nicht entfernt und Client-Anwendung konfiguriert, um Nachrichten zu empfangen, weil die erste Nachricht
Überprüfen Sie, ob die Methode 'onTokenRefresh()' aufgerufen wird. Dies bedeutet, dass das Token aktualisiert wird und Sie das neue Token verwenden müssen. Verwenden Sie die Firebase-Konsole, um die Benachrichtigung zu senden? oder Sie verwenden Ihre eigene Serverimplementierung. – GeorgeLBA
GeorgeLBA, onTokenRefresh in meinem Fall wird nur einmal beim ersten Programmstart oder nach dem Bereinigen aller Apps Daten aufgerufen. Ich verwende meine eigene Serverimplementierung –
Nikita, Versuchen Sie, das Token zu drucken, nachdem Sie die erste Benachrichtigung gesendet haben. Nur um sicherzustellen, dass sich das Token nicht ändert. Verwenden Sie 'FirebaseInstanceID.getToken()' und überprüfen Sie, ob das Token nach dem Senden der Benachrichtigung identisch ist. Wenn es NULL ist, weil das Token aus irgendeinem Grund entfernt wurde. – GeorgeLBA