From 7a18cb5672127bf12c8edac8a327f9b706b79ff7 Mon Sep 17 00:00:00 2001 From: RoboErik Date: Tue, 2 Sep 2014 15:04:27 -0700 Subject: [PATCH 1/2] Don't play a sound when adjusting volume while telephony is active bug:17106215 Change-Id: I54f156d91440ce777e5a4d473cdd47927479d084 --- .../core/java/com/android/server/media/MediaSessionRecord.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/services/core/java/com/android/server/media/MediaSessionRecord.java b/services/core/java/com/android/server/media/MediaSessionRecord.java index 0da2cfa8e19f7..b936130dbc154 100644 --- a/services/core/java/com/android/server/media/MediaSessionRecord.java +++ b/services/core/java/com/android/server/media/MediaSessionRecord.java @@ -231,7 +231,7 @@ public class MediaSessionRecord implements IBinder.DeathRecipient { * @param direction The direction to adjust volume in. */ public void adjustVolume(int direction, int flags, String packageName, int uid) { - if (isPlaybackActive(false)) { + if (isPlaybackActive(false) || hasFlag(MediaSession.FLAG_EXCLUSIVE_GLOBAL_PRIORITY)) { flags &= ~AudioManager.FLAG_PLAY_SOUND; } if (direction > 1) { From f2133474afce7808541c92a1e5c78eb8b0950329 Mon Sep 17 00:00:00 2001 From: RoboErik Date: Tue, 2 Sep 2014 15:54:16 -0700 Subject: [PATCH 2/2] Update MediaController comment to mention notification listeners Forgot to update the comment to specify that notification listeners may also get a MediaController from the manager. Change-Id: Id38bcf7cb38185bfe4f99bcf8889a6415320dd36 --- media/java/android/media/session/MediaController.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/media/java/android/media/session/MediaController.java b/media/java/android/media/session/MediaController.java index 9641f83c8a33a..12ee59e1f62a6 100644 --- a/media/java/android/media/session/MediaController.java +++ b/media/java/android/media/session/MediaController.java @@ -47,8 +47,9 @@ import java.util.List; * receive updates from the session, such as metadata and play state changes. *

* A MediaController can be created through {@link MediaSessionManager} if you - * hold the "android.permission.MEDIA_CONTENT_CONTROL" permission or directly if - * you have a {@link MediaSession.Token} from the session owner. + * hold the "android.permission.MEDIA_CONTENT_CONTROL" permission or are an + * enabled notification listener or by getting a {@link MediaSession.Token} + * directly from the session owner. *

* MediaController objects are thread-safe. */