7

When One user A log In and then Log out. Then user B logs In. The notification intended for user A is received bu user B because the token generated for user A is not removed. The dart package have no options for removing this token.

2 Answers2

9

You can accomplish that by calling deleteInstanceID. Be aware that deleteInstanceID automatically recreates the token, so you have to setAutoInitEnabled to false beforehand. You can check the current auto-init value by querying autoInitEnabled.

Note: requires firebase_messaging version 2.1.0 or greater.

Feu
  • 4,802
  • 1
  • 26
  • 51
7

Note from Official documentation:

DEPRECATED: deleteInstanceID() has been deprecated in favor of deleteToken()

So to make current token invalid just add this code to your logout function:

await FirebaseMessaging.instance.deleteToken();

After that, messages sent by the server to this token will fail.

AnasSafi
  • 3,608
  • 28
  • 25