Merge "Fix MediaSession.Token#equals()" into rvc-dev

This commit is contained in:
Jaewan Kim
2020-03-02 06:28:20 +00:00
committed by Android (Google) Code Review
4 changed files with 10 additions and 8 deletions

View File

@@ -196,7 +196,7 @@ public final class MediaSession {
.getSystemService(Context.MEDIA_SESSION_SERVICE);
try {
mBinder = manager.createSession(mCbStub, tag, sessionInfo);
mSessionToken = new Token(mBinder.getController());
mSessionToken = new Token(Process.myUid(), mBinder.getController());
mController = new MediaController(context, mSessionToken);
} catch (RemoteException e) {
throw new RuntimeException("Remote error creating session.", e);
@@ -771,8 +771,8 @@ public final class MediaSession {
/**
* @hide
*/
public Token(ISessionController binder) {
mUid = Process.myUid();
public Token(int uid, ISessionController binder) {
mUid = uid;
mBinder = binder;
}

View File

@@ -29,6 +29,7 @@ import android.content.IntentFilter;
import android.media.AudioManager;
import android.media.session.MediaSession;
import android.os.Handler;
import android.os.Process;
import android.testing.AndroidTestingRunner;
import androidx.test.filters.SmallTest;
@@ -116,13 +117,13 @@ public class VolumeDialogControllerImplTest extends SysuiTestCase {
@Test
public void testOnRemoteVolumeChanged_newStream_noNullPointer() {
MediaSession.Token token = new MediaSession.Token(null);
MediaSession.Token token = new MediaSession.Token(Process.myUid(), null);
mVolumeController.mMediaSessionsCallbacksW.onRemoteVolumeChanged(token, 0);
}
@Test
public void testOnRemoteRemove_newStream_noNullPointer() {
MediaSession.Token token = new MediaSession.Token(null);
MediaSession.Token token = new MediaSession.Token(Process.myUid(), null);
mVolumeController.mMediaSessionsCallbacksW.onRemoteRemoved(token);
}

View File

@@ -172,7 +172,7 @@ public class MediaSessionRecord implements IBinder.DeathRecipient, MediaSessionR
mTag = tag;
mSessionInfo = sessionInfo;
mController = new ControllerStub();
mSessionToken = new MediaSession.Token(mController);
mSessionToken = new MediaSession.Token(ownerUid, mController);
mSession = new SessionStub();
mSessionCb = new SessionCb(cb);
mService = service;

View File

@@ -22,8 +22,8 @@ import static org.junit.Assert.assertTrue;
import static org.mockito.Matchers.anyInt;
import static org.mockito.Matchers.anyString;
import static org.mockito.Matchers.eq;
import static org.mockito.Mockito.when;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.when;
import android.app.Notification;
import android.app.NotificationChannel;
@@ -33,6 +33,7 @@ import android.content.pm.ApplicationInfo;
import android.content.pm.PackageManager;
import android.media.session.MediaSession;
import android.os.Build;
import android.os.Process;
import android.os.UserHandle;
import android.provider.Settings;
import android.service.notification.StatusBarNotification;
@@ -140,7 +141,7 @@ public class NotificationComparatorTest extends UiServiceTestCase {
Notification n3 = new Notification.Builder(mContext, TEST_CHANNEL_ID)
.setStyle(new Notification.MediaStyle()
.setMediaSession(new MediaSession.Token(null)))
.setMediaSession(new MediaSession.Token(Process.myUid(), null)))
.build();
mRecordDefaultMedia = new NotificationRecord(mContext, new StatusBarNotification(pkg2,
pkg2, 1, "media", uid2, uid2, n3, new UserHandle(userId),