Включить не беспокоить программно, за исключением - PullRequest
1 голос
/ 09 ноября 2019

У меня есть приложение для Android, и мне нужно программно включить кнопку «Не беспокоить», но за исключением того, что я могу воспроизводить мультимедиа. Мне удалось включить функцию «Не беспокоить» с этим кодом:

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
    if (notificationManager.isNotificationPolicyAccessGranted) {
        Log.d(Globals.LOG_TAG, "has permissions")
    } else {
        Log.d(Globals.LOG_TAG, "does not have permissions")
        val intent = Intent(Settings.ACTION_NOTIFICATION_POLICY_ACCESS_SETTINGS)
        startActivity(intent)
    }
} else {
    Log.d(Globals.LOG_TAG, "device does not support do not disturb feature")
}
notificationManager.setInterruptionFilter(NotificationManager.INTERRUPTION_FILTER_NONE)

и добавил разрешения:

<uses-permission android:name="android.permission.ACCESS_NOTIFICATION_POLICY"/>

, но не смог воспроизвести мультимедиа в приложении, посколькуне беспокоить. Но я увидел, что могу устанавливать исключения (для вызовов, сигналов тревоги, мультимедиа ...) и хочу программно добавить исключение для мультимедиа.

(Мое приложение написано на Kotlin)

Как мне этого добиться? Спасибо.

1 Ответ

2 голосов
/ 14 ноября 2019

Нужно сделать

notificationManager.setInterruptionFilter(NotificationManager.INTERRUPTION_FILTER_PRIORITY)

вместо

notificationManager.setInterruptionFilter(NotificationManager.INTERRUPTION_FILTER_NONE)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...