首页 > 解决方案 > 通过 Cloud Messaging 禁用 Firebase 云消息传递到托盘

问题描述

我已经研究了这个话题一段时间,但我似乎无法理解。显然谷歌还没有为此制作用户界面,这就是我所理解的。所以这就是问题所在。

我喜欢偶尔向我的应用用户(100k+)发送云消息。用户可以选择关闭这些通知,如果应用程序在前台,这可以正常工作。

但作为背景,Firebase 没有给我任何处理这个问题的方法。即使用户在应用程序中禁用了消息,该消息也将始终进入托盘。可以理解的是,通知永远不会到达应用程序。

我读过人们的回复,我们应该直接从我们自己的服务器发送此类消息。是的,我有自己的服务器,而且我确实直接从服务器向我的用户发送了很多消息。我维护了一个包含所有 fcm 代码的数据库。

但我想知道是否有办法通过firebase控制台实现这一点。很高兴将所有消息都放在一个地方,例如 ios 和 android。谷歌还将向我们展示统计数据,这些统计数据对于分析哪些通知效果更好也很重要。

我在这里看到了一个可能的答案,How can I disable firebase notification on android client app,但它看起来非常不合常规。

任何帮助,将不胜感激。

标签: androidandroid-studiofirebase-cloud-messaging

解决方案


要禁用通知,只需添加

FirebaseMessaging.getInstance (). UnsubscribeFromTopic ("Topic_Name");

注意:这些必须事先订阅主题

再次启用通知使用这个

FirebaseMessaging.getInstance (). SubscribeToTopic ("Topic_Name");

推荐阅读