查看 Firebase 文档,建议为每个客户端实例生成一个 FCM 令牌,然后必须手动存储。如果我将每个令牌链接到 Firestore 数据库中的用户文档,则当用户注销登录时,是否需要手动删除设备特定的令牌?
例如,用户 A 启动应用程序并将其 FCM 令牌 (例如 "ABC") 存储到其用户文档中。然后,用户 A 注销登录,B 登录。FCM 令牌不会刷新**,因此我需要从 A 的用户文档中删除该令牌并将其移动到 B 的用户文档中。否则,任何发送给 A 的通知都会发送到 B (都在同一台设备上)。
这种想法是正确的吗?它似乎是处理令牌的棘手方法,但据我所知是必要的?
** 根据 Firebase 文档,仅在以下情况下刷新令牌:
- 在新设备上恢复应用程序
- 用户卸载/重新安装应用程序
- 用户清除应用程序数据。
阅读更多的文档,是否最好先本地处理通知 - 决定它是否适用于已登录的帐户,然后再呈现它?即不向通知添加任何低级敏感数据(例如聊天消息),只提供“获取新消息的通知”?