我的应用程序可以接收不同的通知类型(例如News
和Podcast
)。目前,它有两个简单的开关,用户可以启用和禁用这些不同的通知类型。它只需订阅和取消订阅相应的Firebase主题即可。明显的优点是设备只接收用户想要的通知,而不必在本地过滤它们=>电池和数据有效。
问题是,我想将它与新的Android O通知渠道结合起来。我是否正确地假设唯一的方法是只订阅Firebase中的所有主题并让用户在Android设置中手动禁用不需要的主题?
是否有更好的方法可以节省更多电池寿命(通过不接收所有通知)?
答案 0 :(得分:4)
Notification Channel(仅适用于Android O所需的功能 - 可能是以后)是(您)通常用于排序/管理您在本地构建的通知的参数。 -
Android O引入了通知渠道,以提供统一的系统来帮助用户管理通知。
它不一定禁止接收您不希望收到的通知,但是没有通知通道的(AFAIK)通知内置将不会在Android O中显示/显示(不是收到!=未显示)。即您的设备实际上可能仍在接收通知,但不会显示。
对于通过主题发送的通知,只要订阅了相应的注册令牌,客户端handle it accordingly的预期行为就会出现。
尽管如此,你已经实现了什么(如果我理解你的帖子正确 - 订阅和取消订阅基于某种类型的开关的主题)已经是最简单的了。