Android: 2021 Firebase Cloud Messaging 如何处理用户注销
Android: How to handle user logout Firebase Cloud Messaging in 2021
所以,我只想处理用户从应用程序注销时的情况。
我在用户注销时调用方法 FirebaseMessaging.getInstance().deleteToken()
,它按预期工作,即用户不再收到推送消息...
但是如果没有互联网连接方法deleteToken()
也无济于事。尽管用户已注销,但在建立连接后仍会收到推送消息。
我该如何处理?
Firebase Cloud Messaging 不了解用户,这解释了为什么它无法根据身份验证状态 sends/displays 更改消息。
这里的主要问题是,如果应用程序未被使用,系统会显示 notification
消息,并且您无法根据身份验证状态控制系统对它们执行的操作。
处理这些情况的最佳方法是只发送 data
消息(没有 notification
属性)。此类纯数据消息的显示由您的应用程序代码处理,因此您的应用程序代码可以检查用户是否已登录,并据此决定是否显示该消息。
我还建议继续阅读 FCM messages types 以详细了解这些类型之间的区别。
所以,我只想处理用户从应用程序注销时的情况。
我在用户注销时调用方法 FirebaseMessaging.getInstance().deleteToken()
,它按预期工作,即用户不再收到推送消息...
但是如果没有互联网连接方法deleteToken()
也无济于事。尽管用户已注销,但在建立连接后仍会收到推送消息。
我该如何处理?
Firebase Cloud Messaging 不了解用户,这解释了为什么它无法根据身份验证状态 sends/displays 更改消息。
这里的主要问题是,如果应用程序未被使用,系统会显示 notification
消息,并且您无法根据身份验证状态控制系统对它们执行的操作。
处理这些情况的最佳方法是只发送 data
消息(没有 notification
属性)。此类纯数据消息的显示由您的应用程序代码处理,因此您的应用程序代码可以检查用户是否已登录,并据此决定是否显示该消息。
我还建议继续阅读 FCM messages types 以详细了解这些类型之间的区别。