问题是Android O及以上版本。
例如,我创建了一个名为“default”的通知通道,并将其设置为IMPORTANCE_DEFAULT
。然后我创建了一个通知,将其添加到频道并将IMPORTANCE_HIGH
放入其构建器中。通知的最终优先级是什么?
我没有在文档中找到答案,他们说个人需要支持旧版本:
要支持运行Android 7.1(API级别25)或更低版本的设备,您还必须使用NotificationCompat类中的优先级常量为每个通知调用setPriority()。
https://developer.android.com/training/notify-user/channels#importance
根据我的经验,在Android O及以上版本中,NotificationChannel的重要性似乎优先于个别通知的优先级。
在我自己的应用程序中,我手动指定每个通知的优先级,以符合您引用的Google建议。我只是尝试将通知的优先级设置为PRIORITY_MAX
,并通过NotificationChannel将其发送出去,重要性为IMPORTANCE_DEFAULT
,并且通知出现在状态栏中而不会滑落(如平视显示),就像使用带有IMPORTANCE_HIGH
的NotificationChannel一样。