使用Firebase主题消息与Android通知渠道

6
我有一个应用程序,它可以接收不同类型的通知(例如“新闻”和“播客”)。目前它有两个简单的开关,用户可以启用和禁用这些不同的通知类型。它通过订阅和取消订阅相应的 Firebase 主题来工作。明显的优点是设备只接收用户想要的通知,而无需在本地过滤它们 => 电池和数据效率高。
问题是,我想将其与新的 Android O 通知渠道结合使用。我是否正确地认为唯一的方法是订阅 Firebase 中的所有主题,并让用户在 Android 设置中手动禁用不需要的主题?
是否有更好的方法可以节省更多的电池寿命(不接收所有通知)?
1个回答

4
通知渠道(Notification Channel)(仅适用于Android O及以上版本)是一个参数,您可以用它来排序/管理本地构建的通知。 安卓O引入了通知渠道,以提供一个统一的系统来帮助用户管理通知。 它不一定禁用您不想接收的通知,但是没有使用通知渠道构建的通知将不会在安卓O上显示(未被接收 != 未被显示)。也就是说,您的设备可能仍然会接收通知,但只是没有显示。 对于通过主题发送的通知,只要相应的注册令牌已经订阅,客户端就应该根据预期行为处理它们。 总之,如果我正确理解了您的帖子——根据某种开关订阅和取消订阅主题,那么您已经实现了最简单的方法。 如果您想完全禁用通知,则可以调用deleteInstanceId()。 有关更多信息,请参见我在这里这里的回答。

4
看起来最简单的做法是建立一个通知渠道,同时让用户在我的应用中选择个别的通知类别。其他做法可能会导致界面混乱。感谢您的回答! - Thomas

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接