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.
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.
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.
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.