Firebase 注册令牌和通知问题

Posted

技术标签:

【中文标题】Firebase 注册令牌和通知问题【英文标题】:Problem with Firebase registration token and notifications 【发布时间】:2020-04-15 20:51:18 【问题描述】:

我有几个关于 Firebase 注册令牌和 Firebase 通知的问题,让我们开始吧

    每当用户尝试登录我的应用程序时,我都会生成注册令牌,并将其保存到 firestore 数据库中的用户文档中。我的问题是:如果我也登录另一部手机(使用我朋友的手机)会发生什么(令牌保存在数据库中),然后注销并在我登录手机之前收到通知。该通知会发送到我朋友的手机还是我的手机?

    如果要发送到我朋友的手机,我如何确保通知始终发送到我当前登录的手机,这是否可能?

    保存令牌并向手机发送通知的最佳方法是什么?

我目前对这一切有点困惑。

【问题讨论】:

请在 Stack Overflow 上的每个帖子中限制自己一个问题。 【参考方案1】:

    如果您存储的最后一个令牌是您朋友手机上的令牌,并且您将通知发送到存储的令牌,那么它将发送到朋友的手机。

    由于您尚未在自己的手机上登录,并且您只为每个用户存储一个令牌,因此您无法在自己的手机上收到通知。

    听起来像你:

    拥有一个您希望用户在多台设备上登录的应用 您希望他们仅在设备上登录时收到通知

    在这种情况下,我建议在用户退出时从应用程序和/或数据库中擦除令牌。流程看起来像这样:

      从数据库中擦除令牌 调用deleteInstanceId释放应用实例中的令牌 注销用户。

【讨论】:

以上是关于Firebase 注册令牌和通知问题的主要内容,如果未能解决你的问题,请参考以下文章

收到 Firebase 注册令牌但未显示通知

我应该自己保存firebase令牌还是在注册远程通知时自动完成?

如何在不请求通知权限的情况下获取 Firebase 云消息传递的注册令牌?

Firebase 通知:如何从 Firebase 中删除令牌?

Firebase 注册令牌未显示在 Android Studio logcat 中

如何使用 Firebase 中的用户令牌向特定用户发送通知?