Android通知渠道的最大数量

7

我是初学者,在Oreo中实现Android通知渠道方面不太熟悉。一个应用程序最多可以有多少个通知渠道?我们能否创建无限数量的通知渠道,还是有数量限制呢?

4个回答

5
据我所知,应用程序可以创建的通道数量没有限制。通知通道的唯一目的是为用户提供更多关于通知行为的控制,它无法降低每个应用程序的通知数量。
您可以在Android Oreo上创建和显示通知|示例中详细了解通知通道。

4

关于同时可创建的通道数量,没有明确说明限制,但在删除其他通道后可以无限次地创建通道。

文件PreferencesHelper.java包含了一个当前设置为50000的限制值。

https://android.googlesource.com/platform/frameworks/base/+/refs/heads/master/services/core/java/com/android/server/notification/PreferencesHelper.java

enter image description here

当通道数量超过该限制时,就会使用这个值来限制创建更多的通道,并抛出异常"Limit exceed; cannot create more channels" enter image description here

不幸的是,该值不能公开访问,所以任何你想要实现的限制检查都必须由你自己硬编码实现。我的建议是将你自己的限制设置为一个你认为开始变得不合理的数字,当达到该限制时,运行通知通道的检查以找出问题并进行修复。例如,如果你的应用只需要创建不超过5个通道,则将限制设置为6是一个好的起点。


-1

随着Android Oreo的推出,通知渠道是开发人员用来按类型分解应用程序可以提供给我们的通知的工具。这些渠道由开发人员决定,其想法是为我们提供一种将对我们重要的通知与不重要的通知分开的方法,然后决定如何显示它们。有些应用程序将拥有许多不同的渠道,而有些应用程序只会有几个或仅有一个。

O之前的Android版本中,开发人员使用所谓的优先级来决定如何向您显示通知。如果他们认为通知很重要,他们可以设置它以窥视(在屏幕上显示视觉指示)或发出声音,或两者兼备。如果他们认为它不重要,那么它就会被放置在托盘中,等待您下次查看。

现在,他们将事物分解成渠道,我们可以决定如何显示每种类型的通知。所有相同类型的通知(例如,Twitter上的回复)都被放置在同一个渠道中,没有其他类型的通知与它们分组。

作为额外的福利,允许我们使用多个帐户的应用程序可以为每个组合设置通道 - 您的个人电子邮件和工作电子邮件可以遵循相同的规则并以相同的方式显示您收到的通知。

你应该阅读这篇文章:

https://developer.android.com/guide/topics/ui/notifiers/notifications.html#ManageChannels

例子:

enter image description here


1
谢谢。但我想知道通知频道数量的限制。我搜索了更多的网站(包括developer.android.com),没有一个网站描述通知计数方面的内容。 - Bala

-1

1
目前你的回答不够清晰。请编辑并添加更多细节,以帮助其他人理解它如何回答所提出的问题。你可以在帮助中心找到有关如何撰写好答案的更多信息。 - Community

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