【发布时间】:2021-01-31 16:29:18
【问题描述】:
我不确定什么是合适的 FCM 令牌处理机制,所以我在这里写下我们的流程只是为了获得一些验证或改进建议:
- 在客户端登录时获取 FCM 令牌 (Flutter)
- 在我们的数据库中保存 FCM 令牌(使用我们的 REST API)
- 注销时删除 FCM 令牌(使用我们的 REST API)
Q1:我们是否应该比仅在登录时更频繁地获取 FCM 令牌? AFAIK,FCM 令牌仅在应用重新安装、清除缓存等时发生变化。这是否还包括来自 PlayStore 的应用更新?在这种情况下,我们是否应该在每次应用启动时保存 FCM 令牌,因为用户将在应用更新后保持登录状态,因此我们不会触发保存 FCM 调用。
Q2:我是否提到了从我们的数据库中删除 FCM 令牌的正确方法?我们不希望用户在退出后继续收到通知。
Q3:一个附加的想法是将device_id与fcm_token一起发送到服务器,以便服务器删除之前为该device_id保存的所有FCM令牌。如果用户在未注销的情况下卸载应用程序(这意味着 DELETE fcm_token 调用从未通过),这对于在 DB 上没有无用的令牌很有用。
【问题讨论】:
标签: firebase flutter push-notification notifications firebase-cloud-messaging