14

Je souhaite stocker le jeton FCM dans la table de l'utilisateur de mon application Android dans la base de données lorsque l'utilisateur s'inscrit à l'application. Lorsque je veux envoyer une notification à un utilisateur spécifique, je vais chercher Token de la ligne correspondante et envoyer une notification push.Mais je suis confus que chaque fois que l'utilisateur se déconnecte de son application et enregistre un nouveau compte depuis le même appareil, alors il y aura deux lignes deux Token pour le même périphérique sur la base de données. Comment gérer un tel cas? Qu'arrive-t-il aux anciens jetons dans l'appareil? s'il vous plaît, n'importe qui peut m'aider?Le jeton FCM (firebase cloud messaging) est-il disponible pour un appareil ou pour un compte?

+1

il ne devrait pas y avoir deux rangs. si vous implémentez login/logout - effacez le jeton précédent de l'utilisateur avant de définir le nouveau – Shubhank

+4

que se passe-t-il si deux utilisateurs utilisent un appareil mais qu'ils ont un compte différent et qu'ils échangent des appareils quotidiennement en se connectant et se déconnectant? –

+0

ils ne devraient pas recevoir les notifications les uns des autres par conséquent lors de la déconnexion - effacer le jeton de votre backend. – Shubhank

Répondre

14

Le jeton d'instance d'instance utilisé pour envoyer des messages FCM représente l'instance de et l'application sur un périphérique. L'utilisateur actuel de l'application n'affecte pas le jeton représentant l'instance d'application. La désinstallation et la réinstallation de l'application entraîneraient la génération d'un nouveau jeton, mais pas le comportement in-app comme le changement d'utilisateur.

Vous devez toujours supprimer le mappage du jeton à l'utilisateur lors de la déconnexion et ajouter un nouveau mappage avec le même jeton à l'utilisateur qui se connecte, mais ce sera le même jeton.

3

Je me sens sans doute cela peut vous aider,

Lorsque l'utilisateur se déconnecte clairement son dispositif de jeton et lui faire Déconnexion afin qu'il ne sera pas en mesure de recevoir les mises à jour et par conséquent, un seul utilisateur à la fois peut obtenir les mises à jour