android8.0通知代码,Android8.0通知渠道

在API 26以下,每个应用只有一个渠道。Android8.0(API 26)引入了通知渠道,界面将渠道称作“类别”,从API 26开始必须为所有通知分配渠道,否则通知是不会显示的。 将通知归类为不同的渠道,用户可以停用应用的特定通知渠道(而非停用应用的所有通知)。在Android系统设置中可以控制每个渠道的视觉和听觉选项。用户还可以长按通知以更改所关联渠道的行为。

一个应用可以有多个通知渠道(每个渠道对应于应用发出的每类通知)。

在API 26(含)以上,渠道还可以用于指定通知的重要程度等级。这个重要程度等级是用来决定通知应在多大程度上干扰用户(从视觉和听觉上)。重要程度越高,干扰程度就越高。这个重要程度是由通知发布到的渠道的importance决定的。用户可以在系统设置中更改通知渠道的重要程度。在API 25(含)以下,则是由priority决定的。可能的重要程度等级如下:

紧急:发出提示音,并以提醒式通知的形式显示

高:发出提示音

中:无提示音

低:无提示意,且不会在状态栏中显示。

但无论重要程度如何,所有通知都会在非干扰系统界面的位置显示,如抽屉式通知栏中,以及在启动器图标上作为标志显示。

勿扰模式:

从API 25开始,用户可以启用勿扰模式,以关闭所有通知的提示音和振动,它有三种级别:

完全静音

仅限闹钟(只有闹钟可以除外)

仅限优先事项:用户可以配置哪些系统级类别可以打扰他们(如仅限闹钟、提醒、活动、来电或短信等)。

在搭载Android8.0(API 26以上)的设备上,用户可以通知按渠道替换勿扰模式来允许特定于应用的类别(又称渠道)显示通知。如付款类通知可能会有取款和存款相关的通知渠道。Android7.1(API 25)仅可以按应用(而不是按渠道)允许显示通知。

注意:

如果我们的应用正在运行“前台服务”,需要发出通知,这种通知不能像关闭其他通知那样关闭这种通知。要移除这一类通知,必须停止运行服务或者将其从“前台”状态中移除。

通知发布的限制

从Androd8.1(API 27)开始,应用无法每秒发出一次以上的通知提示音。如果应用在一秒内发出多条通知,这些通知都会按预期显示,但是每秒中只有第一条通知发出提示音。另外Android还对通知更新频率设定了限制。如果我们频繁地发布有关某条通知的更新(不到一秒内发布多个),系统可能会放弃部分更新。

为了兼容旧设备的通知,请使用NotificationCompat及其子类以及NotificationManagerCompat,这样一来我们就无需要编写条件代码来检查API级别,因为这些API会我们代劳。

最后送上一个Demo。

文章来源: blog.youkuaiyun.com,作者:WongKyunban,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.youkuaiyun.com/weixin_40763897/article/details/99760343

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值