summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBenson Huang <benson.huang@mediatek.com>2014-12-09 15:24:31 +0800
committerNicholas Sauer <nicksauer@google.com>2014-12-09 11:26:11 -0800
commit87970e48c151b8b9533889f317dad79499ced1a0 (patch)
tree2cf876279ab8aba5a3f9e2c64516dc1cf24d5970
parent40cbbc57444d732004bba3c8464c979f83290279 (diff)
downloadandroid_packages_apps_FMRadio-87970e48c151b8b9533889f317dad79499ced1a0.tar.gz
android_packages_apps_FMRadio-87970e48c151b8b9533889f317dad79499ced1a0.tar.bz2
android_packages_apps_FMRadio-87970e48c151b8b9533889f317dad79499ced1a0.zip
[FM] FM Radio should reduce volume when getting AudioManager.AUDIOFOCUS_LOSS_TRANSIENT_CAN_DUCK
When using Talkback (a11y app for visually impaired end users) with the FM Radio app, it can be hard to hear the Talkback audio feedback as the FM Radio output is mixed in with Talkback. The fix is to handle this issue with AudioManager.AUDIOFOCUS_LOSS_TRANSIENT_CAN_DUCK. Bug 16737172 Change-Id: I836c6a298918829645f153768c0f0fa6afc5429c Signed-off-by: Benson Huang <benson.huang@mediatek.com>
-rw-r--r--src/com/android/fmradio/FmService.java13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/com/android/fmradio/FmService.java b/src/com/android/fmradio/FmService.java
index c62027e..236dfdf 100644
--- a/src/com/android/fmradio/FmService.java
+++ b/src/com/android/fmradio/FmService.java
@@ -2031,6 +2031,7 @@ public class FmService extends Service implements FmRecorder.OnRecorderStateChan
*/
@Override
public void onAudioFocusChange(int focusChange) {
+ Log.d(TAG, "onAudioFocusChange " + focusChange);
switch (focusChange) {
case AudioManager.AUDIOFOCUS_LOSS:
synchronized (this) {
@@ -2054,6 +2055,13 @@ public class FmService extends Service implements FmRecorder.OnRecorderStateChan
}
break;
+ case AudioManager.AUDIOFOCUS_LOSS_TRANSIENT_CAN_DUCK:
+ synchronized (this) {
+ updateAudioFocusAync(
+ AudioManager.AUDIOFOCUS_LOSS_TRANSIENT_CAN_DUCK);
+ }
+ break;
+
default:
break;
}
@@ -2132,6 +2140,11 @@ public class FmService extends Service implements FmRecorder.OnRecorderStateChan
bundle.putFloat(FM_FREQUENCY, FmUtils.computeFrequency(mCurrentStation));
handlePowerUp(bundle);
}
+ setMute(false);
+ break;
+
+ case AudioManager.AUDIOFOCUS_LOSS_TRANSIENT_CAN_DUCK:
+ setMute(true);
break;
default: