我是初学者,在Oreo中实现Android通知渠道方面不太熟悉。一个应用程序最多可以有多少个通知渠道?我们能否创建无限数量的通知渠道,还是有数量限制呢?
我是初学者,在Oreo中实现Android通知渠道方面不太熟悉。一个应用程序最多可以有多少个通知渠道?我们能否创建无限数量的通知渠道,还是有数量限制呢?
关于同时可创建的通道数量,没有明确说明限制,但在删除其他通道后可以无限次地创建通道。
文件PreferencesHelper.java
包含了一个当前设置为50000的限制值。
当通道数量超过该限制时,就会使用这个值来限制创建更多的通道,并抛出异常"Limit exceed; cannot create more channels"
不幸的是,该值不能公开访问,所以任何你想要实现的限制检查都必须由你自己硬编码实现。我的建议是将你自己的限制设置为一个你认为开始变得不合理的数字,当达到该限制时,运行通知通道的检查以找出问题并进行修复。例如,如果你的应用只需要创建不超过5个通道,则将限制设置为6是一个好的起点。
随着Android Oreo的推出,通知渠道是开发人员用来按类型分解应用程序可以提供给我们的通知的工具。这些渠道由开发人员决定,其想法是为我们提供一种将对我们重要的通知与不重要的通知分开的方法,然后决定如何显示它们。有些应用程序将拥有许多不同的渠道,而有些应用程序只会有几个或仅有一个。
在O之前的Android版本中,开发人员使用所谓的优先级来决定如何向您显示通知。如果他们认为通知很重要,他们可以设置它以窥视(在屏幕上显示视觉指示)或发出声音,或两者兼备。如果他们认为它不重要,那么它就会被放置在托盘中,等待您下次查看。
现在,他们将事物分解成渠道,我们可以决定如何显示每种类型的通知。所有相同类型的通知(例如,Twitter上的回复)都被放置在同一个渠道中,没有其他类型的通知与它们分组。
作为额外的福利,允许我们使用多个帐户的应用程序可以为每个组合设置通道 - 您的个人电子邮件和工作电子邮件可以遵循相同的规则并以相同的方式显示您收到的通知。
你应该阅读这篇文章:
https://developer.android.com/guide/topics/ui/notifiers/notifications.html#ManageChannels
例子: