web-dev-qa-db-ja.com

FCM(Firebase Cloud Messaging)トークンは1つのデバイスまたは1つのアカウント用ですか?

Androidアプリのユーザーのテーブルをユーザーがアプリに登録するときに、データベースにFCMトークンを保存します。特定のユーザーに通知を送信する場合は、対応する行からトークンをフェッチしてプッシュを送信します通知ですが、アプリのユーザーが自分のアプリからログアウトし、同じデバイスから新しいアカウントを登録すると、データベースに同じ行の2つの行、つまり2つのトークンが存在することに混乱します。このような場合の処理​​方法は何ですか?デバイス?誰かが私を助けることができますか?

18
Roshan Sharma

FCMメッセージの送信に使用されるインスタンスIDトークンは、デバイス上のアプリのインスタンスとアプリを表します。アプリの現在のユーザーは、アプリインスタンスを表すトークンに影響を与えません。アプリをアンインストールして再インストールすると、新しいトークンが生成されますが、ユーザーの切り替えなどのアプリの動作では発生しません。

それでも、ログアウト時にユーザーへのトークンのマッピングを削除し、ログインするユーザーに同じトークンを使用して新しいマッピングを追加する必要がありますが、同じトークンになります。

17
Arthur Thompson

これはおそらくあなたを助けるかもしれないと思います、

ユーザーがログアウトするときにデバイストークンをクリアしてログアウトすると、更新を受信できなくなり、一度に1人のユーザーしか更新を取得できなくなります。

3