From 7b835ec1d91858ec2e3b6508e77b4ac6807e9248 Mon Sep 17 00:00:00 2001 From: Jean-Michel Trivi Date: Tue, 10 Oct 2017 18:08:08 -0700 Subject: Update audio flags to support CellBroadcastSettings.KEY_USE_FULL_VOLUME Use both AudioAttributes flags BYPASS_INTERRUPTION_POLICY and BYPASS_MUTE to support playing the alarm at full volume, regardless of the DnD and volume settings when CellBroadcastSettings.KEY_USE_FULL_VOLUME is true. Test: see b/63617557 Bug: 67578783 Change-Id: Ia81ddeb6983f5abe9f5f1bc10cec0fa4f084a74f --- src/com/android/cellbroadcastreceiver/CellBroadcastAlertAudio.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/com/android/cellbroadcastreceiver/CellBroadcastAlertAudio.java b/src/com/android/cellbroadcastreceiver/CellBroadcastAlertAudio.java index 75e0e052..fe75c968 100644 --- a/src/com/android/cellbroadcastreceiver/CellBroadcastAlertAudio.java +++ b/src/com/android/cellbroadcastreceiver/CellBroadcastAlertAudio.java @@ -531,9 +531,10 @@ public class CellBroadcastAlertAudio extends Service implements TextToSpeech.OnI builder.setContentType(AudioAttributes.CONTENT_TYPE_SONIFICATION); builder.setUsage(AudioAttributes.USAGE_ALARM); if (mUseFullVolume) { - // Set FLAG_BYPASS_INTERRUPTION_POLICY so that it still enables - // audio in DnD mode (except total silence DnD mode). - builder.setFlags(AudioAttributes.FLAG_BYPASS_INTERRUPTION_POLICY); + // Set FLAG_BYPASS_INTERRUPTION_POLICY and FLAG_BYPASS_MUTE so that it enables + // audio in any DnD mode, even in total silence DnD mode (requires MODIFY_PHONE_STATE). + builder.setFlags(AudioAttributes.FLAG_BYPASS_INTERRUPTION_POLICY + | AudioAttributes.FLAG_BYPASS_MUTE); } mMediaPlayer.setAudioAttributes(builder.build()); -- cgit v1.2.3