当前位置: 首页 > 知识库问答 >
问题:

Android:2021如何处理用户注销Firebase云消息

章烨烨
2023-03-14

所以,我只是想处理用户从应用程序注销时的情况。当用户注销时,我调用方法Firebase Messaging.getInstance(). deleteToken(),它按预期工作,即用户不再收到推送消息...

但是,如果没有internet连接方法,则deleteToken()没有帮助。尽管用户已注销,但在建立连接时仍会收到推送消息

我该怎么处理这件事?

共有1个答案

全宪
2023-03-14

Firebase云消息传递对用户一无所知,这解释了为什么它无法根据身份验证状态更改是否发送/显示消息。

这里的主要问题是,如果未使用应用程序,系统会显示通知消息,并且您无法根据身份验证状态控制系统对它们的处理。

处理这些情况的最佳方法是只发送data消息(没有通知属性)。此类仅数据消息的显示由您的应用程序代码处理,因此您的应用程序代码可以检查用户是否登录,并根据此决定是否显示消息。

我还建议阅读FCM消息类型,以进一步了解这些类型之间的区别。

 类似资料:
  • 当用户退出我的应用程序并且我不再希望他接收到设备通知时,我如何处理这种情况。 我试过了 但我仍然会收到设备注册id的通知。 我还确保这是我应该删除的令牌: 或者干脆)。 我还尝试了,但下一次调用时,我收到空值(在第二次尝试时有效)。 我想,在之后,我可以立即再次调用,但这看起来像是一个黑客。还有一个答案是不应该这样做,但它建议删除显然不起作用的令牌。 那么,正确的处理方法是什么呢?

  • 用户无法注销Firebase Android。当我按注销按钮时,它不会注销。 代码在这里:- 日志包括: 02-13 23:54:19.654 307 3-3073/com.example.imran.bloodgenders i/view:Touch down dispatch to android.widget.button{42d3afa0 vfed..........120,594-600

  • 我正在用Firebase设置身份验证。我成功登录了,但当我注销时,我的应用程序崩溃了 我在activity_menu上创建菜单。菜单项名为log_out。如果用户单击此项,则必须注销 我尝试这段代码查看错误,但它没有显示给我 我以为它是成功运行的,我没有看到任何错误。我怎么知道呢?

  • 问题内容: 我在iOS应用中使用Firebase身份验证。当用户使用Firebase登录我的应用程序然后注销该用户的所有其他设备(会话)时,Firebase中是否有任何方法?我可以使用Firebase admin SDK来做到这一点吗? 问题答案: 当我遇到此问题时,我已使用云功能解决了该问题,请访问此链接以获取更多详细信息https://firebase.google.com/docs/auth

  • 我通过一个‘管理应用程序’发送数据到FCM服务器,并希望其他‘非管理应用程序’能够接收推送通知,每当‘管理应用程序’发送数据到FCM服务器。 类似{“click_action”:“com.example.application.androidapp.main_activity”}或{“click_action”:“main_activity”}就可以了?