Уведомление Android вибрирует с NotifiationChannel.enableVibration(false)

С API 26 (Android 8.0) нам нужно определить NotificationChannel для каждого уведомления. Каждый канал имеет свои собственные настройки сбоев (например, вибрация, свет, звук).

Проблема: Когда я отключаю вибрацию для этого канала и развертываю ее на телефоне Android 8.0 (обновление для системы безопасности, сентябрь 2017 г.) (Nexus 5X), уведомление в любом случае вызывает вибрацию и открывается автоматически (всплывающее окно), которое я не настроил и хочу отключить.

  1. Я регистрирую NotificationChannel в моей основной деятельности:

    // Register NotificationChannels needed for API 26+ to display notification messages
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
        NotificationChannel runningChannel = new NotificationChannel(NOTIFICATION_CHANNEL_ID_RUNNING,
                getString(R.string.notification_channel_name_running), NotificationManager.IMPORTANCE_LOW);
        runningChannel.enableLights(false);
        runningChannel.enableVibration(false);
        mNotificationManager.createNotificationChannel(runningChannel);
    }
    
  2. Я установил NotificationChannel для уведомления:

    notification = new NotificationCompat.Builder(context)
                .setContentIntent(onClickPendingIntent)
                .setChannelId(NOTIFICATION_CHANNEL_ID_RUNNING)
                .setOngoing(true)
                .setWhen(System.currentTimeMillis())
                .setAutoCancel(false)
                .build();
    

Обновление (обновление безопасности 5 октября 2017 г.)

Теперь все работает, как и ожидалось, без обходного пути, поэтому я могу выбрать targetSDK 26 (раньше я использовал 25, чтобы избежать этого ложного поведения). Для случая, когда другие выпуски имеют аналогичную ошибку других телефонов, еще не получили последнее обновление, я пометил обходной путь ниже как принятый ответ.

1 ответ

Решение

Это похоже на работу:

runningchannel.setVibrationPattern(new long[]{0, 0, 0, 0,0, 0, 0, 0, 0});

Да странно

Другие вопросы по тегам