私はプロジェクトでFCMを追加するためにfirebase.google.comの指示に従った。
すべてがうまくいきました。「FirebaseAppの初期化に成功しました」というメッセージとログに新鮮なトークンがあります。しかし、それは動作していません...私はトークンに送信する最初のプッシュ通知のみ私は成功を得る。 2番目のプッシュと残りのエラーは "NotRegistered"です。
ドキュメントは、それがNotRegisteredされている場合は、アプリケーションがデバイスからアンインストールされた、またはクライアントアプリケーションがメッセージを受信するように設定されていないため、ご使用のサーバーのデータベースからの登録IDを削除する必要がありますFCMがエラーを返す:最初のメッセージの後にNotRegistered
言います。
が、アプリケーションは削除されませんでしたし、クライアントアプリケーションは、最初のメッセージは、私は時間のために苦労したクライアント
'onTokenRefresh()'メソッドが呼び出されているかどうかを確認してください。つまり、トークンが更新され、新しいトークンを使用する必要があります。 Firebaseコンソールを使用して通知を送信していますか?または独自のサーバー実装を使用しています。 – GeorgeLBA
私の場合のGeorgeLBA、onTokenRefreshは、programmの最初の起動時またはすべてのアプリケーションデータの消去後に一度だけ呼び出されます。自分のサーバー実装を使用しています –
Nikita、最初の通知を送信した後にトークンを印刷してみてください。トークンが変更されていないことを確認するだけです。 'FirebaseInstanceID.getToken()'を使って、通知を送信した後にトークンが同じであるかどうかを確認してください。 nullの場合は、何らかの理由でトークンが削除されたためです。 – GeorgeLBA