当android应用程序注销并与另一个用户登录时如何重新生成新的FCM令牌
Posted
技术标签:
【中文标题】当android应用程序注销并与另一个用户登录时如何重新生成新的FCM令牌【英文标题】:How to regenerate the new FCM Token when android app gets logout and login with another user 【发布时间】:2021-08-27 15:52:01 【问题描述】:当用户注销时,我的应用程序没有刷新 FCM 令牌。然后另一个用户使用相同的 FCM 令牌使用新凭据登录。所以通知会发送给错误的用户。
请帮我解决这个问题。提前致谢。
生成Token的代码:
@Override
public void onNewToken(@NonNull String token)
super.onNewToken(token);
Log.d(TAG, "token: " + token);
【问题讨论】:
设备相同时,通知token是否相同 您需要在收到通知时检查用户 ID,以确保它确实显示给新用户 没有清除令牌的选项? @Quicklearner 【参考方案1】:您可能将用户/设备令牌存储在您的数据库中,并使用它来发送 FCM 消息。当用户注销时,您需要在注销之前删除该令牌。如果您尝试在您可能会出现权限错误之后执行此操作(确保用户只能删除他自己的令牌)。
当用户登录时,将他的令牌同步到您的数据库。否则,当您不删除已注销用户的令牌时,您将收到有关在同一设备上登录您的应用的每个用户的通知。
【讨论】:
以上是关于当android应用程序注销并与另一个用户登录时如何重新生成新的FCM令牌的主要内容,如果未能解决你的问题,请参考以下文章
Android Login with Token Session:就像用户登录并保持在会话中直到注销
登录时如何处理状态(Ionic、Firebase、AngularJS)?