Exclude MediaSession2 from the media button session

This prevents unexpected Session2Token change notification when
the MediaSession2 token is selected as media button session.

Bug: 160136629
Test: Run CTS
Change-Id: I68650564fbbdaf3f3e85d41f3989cc8b08c36322
This commit is contained in:
Jaewan Kim
2020-06-30 14:58:43 +09:00
parent 9c71148852
commit 9661a45db0
2 changed files with 5 additions and 1 deletions

View File

@@ -2096,7 +2096,7 @@ public class MediaSessionService extends SystemService implements Monitor {
boolean asSystemService, KeyEvent keyEvent, boolean needWakeLock) {
if (mCurrentFullUserRecord.getMediaButtonSessionLocked()
instanceof MediaSession2Record) {
// TODO(jaewan): Implement
// TODO(jaewan): Make MediaSession2 to receive media key event
return;
}
MediaSessionRecord session = null;

View File

@@ -244,6 +244,10 @@ class MediaSessionStack {
private MediaSessionRecordImpl findMediaButtonSession(int uid) {
MediaSessionRecordImpl mediaButtonSession = null;
for (MediaSessionRecordImpl session : mSessions) {
if (session instanceof MediaSession2Record) {
// TODO(jaewan): Make MediaSession2 to receive media key event
continue;
}
if (uid == session.getUid()) {
if (session.checkPlaybackActiveState(
mAudioPlayerStateMonitor.isPlaybackActive(session.getUid()))) {