是否可以使用IMPORTANCE_DEFAULT创建通知频道(原声),但不会播放任何声音?

时间:2018-09-21 13:33:42

标签: android android-notifications android-8.0-oreo

是否可以使用IMPORTANCE_DEFAULT创建一个通知频道(在奥利奥中),但不会播放任何声音?

2 个答案:

答案 0 :(得分:2)

我正在使用

channel.setSound(null, null);

答案 1 :(得分:0)

编辑2

channel.setSound(null,null);

编辑3 使用IMPORTANCE_LOW不会发出声音

  

IMPORTANCE_LOW

在API级别24中添加 公共静态最终int IMPORTANCE_LOW 通知重要性低:在任何地方都可以显示,但不具干扰性。

常量值:2(0x00000002)

感谢您@sdghasemi

编辑1

        private void createNotificationChannel() {
    // Create the NotificationChannel, but only on API 26+ because
    // the NotificationChannel class is new and not in the support library
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
        CharSequence name = getString(R.string.channel_name);
        String description = getString(R.string.channel_description);
        int importance = NotificationManager.IMPORTANCE_DEFAULT;
        NotificationChannel channel = new NotificationChannel(CHANNEL_ID, name, importance);
        channel.setDescription(description);
        // Register the channel with the system; you can't change the importance
        // or other notification behaviors after this
        NotificationManager notificationManager = getSystemService(NotificationManager.class);
        notificationManager.createNotificationChannel(channel);
    }
}

阅读下面

  

IMPORTANCE_DEFAULT

在API级别24中添加 公共静态最终int IMPORTANCE_DEFAULT 默认通知重要性:显示在任何地方,会发出声音,但不会在视觉上侵入。

常数:3(0x00000003)

  

IMPORTANCE_HIGH

在API级别24中添加 公共静态最终int IMPORTANCE_HIGH 更高的通知重要性:到处显示,发出声音和窥视。可以使用全屏意图。

恒定值:4(0x00000004)

  

IMPORTANCE_LOW

在API级别24中添加 公共静态最终int IMPORTANCE_LOW 通知重要性低:在任何地方都可以显示,但不具干扰性。

常量值:2(0x00000002)

  

IMPORTANCE_MAX

在API级别24中添加 公共静态最终int IMPORTANCE_MAX 未使用。

常数:5(0x00000005)

  

IMPORTANCE_MIN

在API级别24中添加

公共静态最终int IMPORTANCE_MIN

最低通知重要性:仅在折叠下方的阴影中显示。不应将其与Service.startForeground一起使用,因为前台服务应该是用户关心的东西,因此将其通知标记为最低重要性没有语义上的意义。如果您从Android版本Build.VERSION_CODES.O开始执行此操作,系统将显示有关您的应用在后台运行的更高优先级通知。