Я написал приложение для Android, которое меняет режим звонка с любого режима на нормальный, если BroadcastReceiver получает уведомление.
Работает нормально на Android <8.
Это также работает для моего устройства Android 8, если режим звонка! = Молчит, когда вещательный приемник реагирует.
При переходе с тихого на бесшумный Boradcast already finished
на Android 8 я получаю исключение о том, что Boradcast already finished
?!
Такое поведение только на моем устройстве Android 8, старые устройства работают нормально.
Может ли кто-нибудь помочь в этом странном поведении? Спасибо!
Я нашел решение проблемы: оно вызвано режимом "Не беспокоить" в новых версиях Android.
Чтобы отключить этот беззвучный режим, вы должны
добавить разрешение в AndroidManifest:
использование-разрешение android: name = "android.permission.ACCESS_NOTIFICATION_POLICY"
Попросите пользователя разрешить выход из этого режима "не беспокоить" следующим намерением:
Намерение намерения = новое намерение (android.provider.Settings.ACTION_NOTIFICATION_POLICY_ACCESS_SETTINGS); startActivity (намерение);
См. Также этот вопрос/ответ: в Android 7 (уровень API 24) моему приложению не разрешено отключение звука телефона (установите режим звонка в беззвучный режим)