Loading media/java/android/media/IMediaRouter2.aidl +1 −2 Original line number Original line Diff line number Diff line Loading @@ -36,6 +36,5 @@ oneway interface IMediaRouter2 { * Call MediaRouterService#requestCreateSessionWithRouter2 to pass the result. * Call MediaRouterService#requestCreateSessionWithRouter2 to pass the result. */ */ void requestCreateSessionByManager(long uniqueRequestId, in RoutingSessionInfo oldSession, void requestCreateSessionByManager(long uniqueRequestId, in RoutingSessionInfo oldSession, in MediaRoute2Info route, in UserHandle transferInitiatorUserHandle, in MediaRoute2Info route); in String transferInitiatorPackageName); } } media/java/android/media/IMediaRouterService.aidl +1 −2 Original line number Original line Diff line number Diff line Loading @@ -64,8 +64,7 @@ interface IMediaRouterService { void requestCreateSessionWithRouter2(IMediaRouter2 router, int requestId, long managerRequestId, void requestCreateSessionWithRouter2(IMediaRouter2 router, int requestId, long managerRequestId, in RoutingSessionInfo oldSession, in MediaRoute2Info route, in RoutingSessionInfo oldSession, in MediaRoute2Info route, in @nullable Bundle sessionHints, in UserHandle transferInitiatorUserHandle, in @nullable Bundle sessionHints); in String transferInitiatorPackageName); void selectRouteWithRouter2(IMediaRouter2 router, String sessionId, in MediaRoute2Info route); void selectRouteWithRouter2(IMediaRouter2 router, String sessionId, in MediaRoute2Info route); void deselectRouteWithRouter2(IMediaRouter2 router, String sessionId, in MediaRoute2Info route); void deselectRouteWithRouter2(IMediaRouter2 router, String sessionId, in MediaRoute2Info route); void transferToRouteWithRouter2(IMediaRouter2 router, String sessionId, void transferToRouteWithRouter2(IMediaRouter2 router, String sessionId, Loading media/java/android/media/MediaRouter2.java +7 −27 Original line number Original line Diff line number Diff line Loading @@ -991,9 +991,7 @@ public final class MediaRouter2 { void requestCreateController( void requestCreateController( @NonNull RoutingController controller, @NonNull RoutingController controller, @NonNull MediaRoute2Info route, @NonNull MediaRoute2Info route, long managerRequestId, long managerRequestId) { @NonNull UserHandle transferInitiatorUserHandle, @NonNull String transferInitiatorPackageName) { final int requestId = mNextRequestId.getAndIncrement(); final int requestId = mNextRequestId.getAndIncrement(); Loading Loading @@ -1022,9 +1020,7 @@ public final class MediaRouter2 { managerRequestId, managerRequestId, controller.getRoutingSessionInfo(), controller.getRoutingSessionInfo(), route, route, controllerHints, controllerHints); transferInitiatorUserHandle, transferInitiatorPackageName); } catch (RemoteException ex) { } catch (RemoteException ex) { Log.e(TAG, "createControllerForTransfer: " Log.e(TAG, "createControllerForTransfer: " + "Failed to request for creating a controller.", ex); + "Failed to request for creating a controller.", ex); Loading Loading @@ -1366,11 +1362,7 @@ public final class MediaRouter2 { } } void onRequestCreateControllerByManagerOnHandler( void onRequestCreateControllerByManagerOnHandler( RoutingSessionInfo oldSession, RoutingSessionInfo oldSession, MediaRoute2Info route, long managerRequestId) { MediaRoute2Info route, long managerRequestId, @NonNull UserHandle transferInitiatorUserHandle, @NonNull String transferInitiatorPackageName) { Log.i( Log.i( TAG, TAG, TextUtils.formatSimple( TextUtils.formatSimple( Loading @@ -1387,8 +1379,7 @@ public final class MediaRouter2 { if (controller == null) { if (controller == null) { return; return; } } requestCreateController(controller, route, managerRequestId, transferInitiatorUserHandle, requestCreateController(controller, route, managerRequestId); transferInitiatorPackageName); } } private List<MediaRoute2Info> getSortedRoutes( private List<MediaRoute2Info> getSortedRoutes( Loading Loading @@ -2423,20 +2414,14 @@ public final class MediaRouter2 { @Override @Override public void requestCreateSessionByManager( public void requestCreateSessionByManager( long managerRequestId, long managerRequestId, RoutingSessionInfo oldSession, MediaRoute2Info route) { RoutingSessionInfo oldSession, MediaRoute2Info route, UserHandle transferInitiatorUserHandle, String transferInitiatorPackageName) { mHandler.sendMessage( mHandler.sendMessage( obtainMessage( obtainMessage( MediaRouter2::onRequestCreateControllerByManagerOnHandler, MediaRouter2::onRequestCreateControllerByManagerOnHandler, MediaRouter2.this, MediaRouter2.this, oldSession, oldSession, route, route, managerRequestId, managerRequestId)); transferInitiatorUserHandle, transferInitiatorPackageName)); } } } } Loading Loading @@ -3581,12 +3566,7 @@ public final class MediaRouter2 { RoutingController controller = getCurrentController(); RoutingController controller = getCurrentController(); if (!controller.tryTransferWithinProvider(route)) { if (!controller.tryTransferWithinProvider(route)) { requestCreateController( requestCreateController(controller, route, MANAGER_REQUEST_ID_NONE); controller, route, MANAGER_REQUEST_ID_NONE, Process.myUserHandle(), mContext.getPackageName()); } } } } Loading services/core/java/com/android/server/media/MediaRouter2ServiceImpl.java +8 −38 Original line number Original line Diff line number Diff line Loading @@ -404,37 +404,17 @@ class MediaRouter2ServiceImpl { long managerRequestId, long managerRequestId, @NonNull RoutingSessionInfo oldSession, @NonNull RoutingSessionInfo oldSession, @NonNull MediaRoute2Info route, @NonNull MediaRoute2Info route, Bundle sessionHints, Bundle sessionHints) { @Nullable UserHandle transferInitiatorUserHandle, @Nullable String transferInitiatorPackageName) { Objects.requireNonNull(router, "router must not be null"); Objects.requireNonNull(router, "router must not be null"); Objects.requireNonNull(oldSession, "oldSession must not be null"); Objects.requireNonNull(oldSession, "oldSession must not be null"); Objects.requireNonNull(route, "route must not be null"); Objects.requireNonNull(route, "route must not be null"); synchronized (mLock) { if (managerRequestId == MediaRoute2ProviderService.REQUEST_ID_NONE || transferInitiatorUserHandle == null || transferInitiatorPackageName == null) { final IBinder binder = router.asBinder(); final RouterRecord routerRecord = mAllRouterRecords.get(binder); transferInitiatorUserHandle = Binder.getCallingUserHandle(); if (routerRecord != null) { transferInitiatorPackageName = routerRecord.mPackageName; } else { transferInitiatorPackageName = mContext.getPackageName(); } } } final long token = Binder.clearCallingIdentity(); final long token = Binder.clearCallingIdentity(); try { try { synchronized (mLock) { synchronized (mLock) { requestCreateSessionWithRouter2Locked( requestCreateSessionWithRouter2Locked( requestId, requestId, managerRequestId, managerRequestId, transferInitiatorUserHandle, transferInitiatorPackageName, router, router, oldSession, oldSession, route, route, Loading Loading @@ -1281,8 +1261,6 @@ class MediaRouter2ServiceImpl { private void requestCreateSessionWithRouter2Locked( private void requestCreateSessionWithRouter2Locked( int requestId, int requestId, long managerRequestId, long managerRequestId, @NonNull UserHandle transferInitiatorUserHandle, @NonNull String transferInitiatorPackageName, @NonNull IMediaRouter2 router, @NonNull IMediaRouter2 router, @NonNull RoutingSessionInfo oldSession, @NonNull RoutingSessionInfo oldSession, @NonNull MediaRoute2Info route, @NonNull MediaRoute2Info route, Loading Loading @@ -1355,8 +1333,6 @@ class MediaRouter2ServiceImpl { userHandler, userHandler, uniqueRequestId, uniqueRequestId, managerRequestId, managerRequestId, transferInitiatorUserHandle, transferInitiatorPackageName, routerRecord, routerRecord, oldSession, oldSession, route, route, Loading Loading @@ -2695,11 +2671,7 @@ class MediaRouter2ServiceImpl { route = mSystemProvider.getDefaultRoute(); route = mSystemProvider.getDefaultRoute(); } } routerRecord.mRouter.requestCreateSessionByManager( routerRecord.mRouter.requestCreateSessionByManager( uniqueRequestId, uniqueRequestId, oldSession, route); oldSession, route, transferInitiatorUserHandle, transferInitiatorPackageName); } catch (RemoteException ex) { } catch (RemoteException ex) { Slog.w(TAG, "getSessionHintsForCreatingSessionOnHandler: " Slog.w(TAG, "getSessionHintsForCreatingSessionOnHandler: " + "Failed to request. Router probably died.", ex); + "Failed to request. Router probably died.", ex); Loading @@ -2711,8 +2683,6 @@ class MediaRouter2ServiceImpl { private void requestCreateSessionWithRouter2OnHandler( private void requestCreateSessionWithRouter2OnHandler( long uniqueRequestId, long uniqueRequestId, long managerRequestId, long managerRequestId, @NonNull UserHandle transferInitiatorUserHandle, @NonNull String transferInitiatorPackageName, @NonNull RouterRecord routerRecord, @NonNull RouterRecord routerRecord, @NonNull RoutingSessionInfo oldSession, @NonNull RoutingSessionInfo oldSession, @NonNull MediaRoute2Info route, @NonNull MediaRoute2Info route, Loading @@ -2732,10 +2702,10 @@ class MediaRouter2ServiceImpl { managerRequestId, oldSession, route); managerRequestId, oldSession, route); mSessionCreationRequests.add(request); mSessionCreationRequests.add(request); int transferReason = RoutingSessionInfo.TRANSFER_REASON_APP; int transferReason = if (managerRequestId != MediaRoute2ProviderService.REQUEST_ID_NONE) { managerRequestId != MediaRoute2ProviderService.REQUEST_ID_NONE transferReason = RoutingSessionInfo.TRANSFER_REASON_SYSTEM_REQUEST; ? RoutingSessionInfo.TRANSFER_REASON_SYSTEM_REQUEST } : RoutingSessionInfo.TRANSFER_REASON_APP; provider.requestCreateSession( provider.requestCreateSession( uniqueRequestId, uniqueRequestId, Loading @@ -2743,8 +2713,8 @@ class MediaRouter2ServiceImpl { route.getOriginalId(), route.getOriginalId(), sessionHints, sessionHints, transferReason, transferReason, transferInitiatorUserHandle, UserHandle.of(routerRecord.mUserRecord.mUserId), transferInitiatorPackageName); routerRecord.mPackageName); } } // routerRecord can be null if the session is system's or RCN. // routerRecord can be null if the session is system's or RCN. Loading services/core/java/com/android/server/media/MediaRouterService.java +2 −11 Original line number Original line Diff line number Diff line Loading @@ -495,18 +495,9 @@ public final class MediaRouterService extends IMediaRouterService.Stub long managerRequestId, long managerRequestId, RoutingSessionInfo oldSession, RoutingSessionInfo oldSession, MediaRoute2Info route, MediaRoute2Info route, Bundle sessionHints, Bundle sessionHints) { @Nullable UserHandle transferInitiatorUserHandle, @Nullable String transferInitiatorPackageName) { mService2.requestCreateSessionWithRouter2( mService2.requestCreateSessionWithRouter2( router, router, requestId, managerRequestId, oldSession, route, sessionHints); requestId, managerRequestId, oldSession, route, sessionHints, transferInitiatorUserHandle, transferInitiatorPackageName); } } // Binder call // Binder call Loading Loading
media/java/android/media/IMediaRouter2.aidl +1 −2 Original line number Original line Diff line number Diff line Loading @@ -36,6 +36,5 @@ oneway interface IMediaRouter2 { * Call MediaRouterService#requestCreateSessionWithRouter2 to pass the result. * Call MediaRouterService#requestCreateSessionWithRouter2 to pass the result. */ */ void requestCreateSessionByManager(long uniqueRequestId, in RoutingSessionInfo oldSession, void requestCreateSessionByManager(long uniqueRequestId, in RoutingSessionInfo oldSession, in MediaRoute2Info route, in UserHandle transferInitiatorUserHandle, in MediaRoute2Info route); in String transferInitiatorPackageName); } }
media/java/android/media/IMediaRouterService.aidl +1 −2 Original line number Original line Diff line number Diff line Loading @@ -64,8 +64,7 @@ interface IMediaRouterService { void requestCreateSessionWithRouter2(IMediaRouter2 router, int requestId, long managerRequestId, void requestCreateSessionWithRouter2(IMediaRouter2 router, int requestId, long managerRequestId, in RoutingSessionInfo oldSession, in MediaRoute2Info route, in RoutingSessionInfo oldSession, in MediaRoute2Info route, in @nullable Bundle sessionHints, in UserHandle transferInitiatorUserHandle, in @nullable Bundle sessionHints); in String transferInitiatorPackageName); void selectRouteWithRouter2(IMediaRouter2 router, String sessionId, in MediaRoute2Info route); void selectRouteWithRouter2(IMediaRouter2 router, String sessionId, in MediaRoute2Info route); void deselectRouteWithRouter2(IMediaRouter2 router, String sessionId, in MediaRoute2Info route); void deselectRouteWithRouter2(IMediaRouter2 router, String sessionId, in MediaRoute2Info route); void transferToRouteWithRouter2(IMediaRouter2 router, String sessionId, void transferToRouteWithRouter2(IMediaRouter2 router, String sessionId, Loading
media/java/android/media/MediaRouter2.java +7 −27 Original line number Original line Diff line number Diff line Loading @@ -991,9 +991,7 @@ public final class MediaRouter2 { void requestCreateController( void requestCreateController( @NonNull RoutingController controller, @NonNull RoutingController controller, @NonNull MediaRoute2Info route, @NonNull MediaRoute2Info route, long managerRequestId, long managerRequestId) { @NonNull UserHandle transferInitiatorUserHandle, @NonNull String transferInitiatorPackageName) { final int requestId = mNextRequestId.getAndIncrement(); final int requestId = mNextRequestId.getAndIncrement(); Loading Loading @@ -1022,9 +1020,7 @@ public final class MediaRouter2 { managerRequestId, managerRequestId, controller.getRoutingSessionInfo(), controller.getRoutingSessionInfo(), route, route, controllerHints, controllerHints); transferInitiatorUserHandle, transferInitiatorPackageName); } catch (RemoteException ex) { } catch (RemoteException ex) { Log.e(TAG, "createControllerForTransfer: " Log.e(TAG, "createControllerForTransfer: " + "Failed to request for creating a controller.", ex); + "Failed to request for creating a controller.", ex); Loading Loading @@ -1366,11 +1362,7 @@ public final class MediaRouter2 { } } void onRequestCreateControllerByManagerOnHandler( void onRequestCreateControllerByManagerOnHandler( RoutingSessionInfo oldSession, RoutingSessionInfo oldSession, MediaRoute2Info route, long managerRequestId) { MediaRoute2Info route, long managerRequestId, @NonNull UserHandle transferInitiatorUserHandle, @NonNull String transferInitiatorPackageName) { Log.i( Log.i( TAG, TAG, TextUtils.formatSimple( TextUtils.formatSimple( Loading @@ -1387,8 +1379,7 @@ public final class MediaRouter2 { if (controller == null) { if (controller == null) { return; return; } } requestCreateController(controller, route, managerRequestId, transferInitiatorUserHandle, requestCreateController(controller, route, managerRequestId); transferInitiatorPackageName); } } private List<MediaRoute2Info> getSortedRoutes( private List<MediaRoute2Info> getSortedRoutes( Loading Loading @@ -2423,20 +2414,14 @@ public final class MediaRouter2 { @Override @Override public void requestCreateSessionByManager( public void requestCreateSessionByManager( long managerRequestId, long managerRequestId, RoutingSessionInfo oldSession, MediaRoute2Info route) { RoutingSessionInfo oldSession, MediaRoute2Info route, UserHandle transferInitiatorUserHandle, String transferInitiatorPackageName) { mHandler.sendMessage( mHandler.sendMessage( obtainMessage( obtainMessage( MediaRouter2::onRequestCreateControllerByManagerOnHandler, MediaRouter2::onRequestCreateControllerByManagerOnHandler, MediaRouter2.this, MediaRouter2.this, oldSession, oldSession, route, route, managerRequestId, managerRequestId)); transferInitiatorUserHandle, transferInitiatorPackageName)); } } } } Loading Loading @@ -3581,12 +3566,7 @@ public final class MediaRouter2 { RoutingController controller = getCurrentController(); RoutingController controller = getCurrentController(); if (!controller.tryTransferWithinProvider(route)) { if (!controller.tryTransferWithinProvider(route)) { requestCreateController( requestCreateController(controller, route, MANAGER_REQUEST_ID_NONE); controller, route, MANAGER_REQUEST_ID_NONE, Process.myUserHandle(), mContext.getPackageName()); } } } } Loading
services/core/java/com/android/server/media/MediaRouter2ServiceImpl.java +8 −38 Original line number Original line Diff line number Diff line Loading @@ -404,37 +404,17 @@ class MediaRouter2ServiceImpl { long managerRequestId, long managerRequestId, @NonNull RoutingSessionInfo oldSession, @NonNull RoutingSessionInfo oldSession, @NonNull MediaRoute2Info route, @NonNull MediaRoute2Info route, Bundle sessionHints, Bundle sessionHints) { @Nullable UserHandle transferInitiatorUserHandle, @Nullable String transferInitiatorPackageName) { Objects.requireNonNull(router, "router must not be null"); Objects.requireNonNull(router, "router must not be null"); Objects.requireNonNull(oldSession, "oldSession must not be null"); Objects.requireNonNull(oldSession, "oldSession must not be null"); Objects.requireNonNull(route, "route must not be null"); Objects.requireNonNull(route, "route must not be null"); synchronized (mLock) { if (managerRequestId == MediaRoute2ProviderService.REQUEST_ID_NONE || transferInitiatorUserHandle == null || transferInitiatorPackageName == null) { final IBinder binder = router.asBinder(); final RouterRecord routerRecord = mAllRouterRecords.get(binder); transferInitiatorUserHandle = Binder.getCallingUserHandle(); if (routerRecord != null) { transferInitiatorPackageName = routerRecord.mPackageName; } else { transferInitiatorPackageName = mContext.getPackageName(); } } } final long token = Binder.clearCallingIdentity(); final long token = Binder.clearCallingIdentity(); try { try { synchronized (mLock) { synchronized (mLock) { requestCreateSessionWithRouter2Locked( requestCreateSessionWithRouter2Locked( requestId, requestId, managerRequestId, managerRequestId, transferInitiatorUserHandle, transferInitiatorPackageName, router, router, oldSession, oldSession, route, route, Loading Loading @@ -1281,8 +1261,6 @@ class MediaRouter2ServiceImpl { private void requestCreateSessionWithRouter2Locked( private void requestCreateSessionWithRouter2Locked( int requestId, int requestId, long managerRequestId, long managerRequestId, @NonNull UserHandle transferInitiatorUserHandle, @NonNull String transferInitiatorPackageName, @NonNull IMediaRouter2 router, @NonNull IMediaRouter2 router, @NonNull RoutingSessionInfo oldSession, @NonNull RoutingSessionInfo oldSession, @NonNull MediaRoute2Info route, @NonNull MediaRoute2Info route, Loading Loading @@ -1355,8 +1333,6 @@ class MediaRouter2ServiceImpl { userHandler, userHandler, uniqueRequestId, uniqueRequestId, managerRequestId, managerRequestId, transferInitiatorUserHandle, transferInitiatorPackageName, routerRecord, routerRecord, oldSession, oldSession, route, route, Loading Loading @@ -2695,11 +2671,7 @@ class MediaRouter2ServiceImpl { route = mSystemProvider.getDefaultRoute(); route = mSystemProvider.getDefaultRoute(); } } routerRecord.mRouter.requestCreateSessionByManager( routerRecord.mRouter.requestCreateSessionByManager( uniqueRequestId, uniqueRequestId, oldSession, route); oldSession, route, transferInitiatorUserHandle, transferInitiatorPackageName); } catch (RemoteException ex) { } catch (RemoteException ex) { Slog.w(TAG, "getSessionHintsForCreatingSessionOnHandler: " Slog.w(TAG, "getSessionHintsForCreatingSessionOnHandler: " + "Failed to request. Router probably died.", ex); + "Failed to request. Router probably died.", ex); Loading @@ -2711,8 +2683,6 @@ class MediaRouter2ServiceImpl { private void requestCreateSessionWithRouter2OnHandler( private void requestCreateSessionWithRouter2OnHandler( long uniqueRequestId, long uniqueRequestId, long managerRequestId, long managerRequestId, @NonNull UserHandle transferInitiatorUserHandle, @NonNull String transferInitiatorPackageName, @NonNull RouterRecord routerRecord, @NonNull RouterRecord routerRecord, @NonNull RoutingSessionInfo oldSession, @NonNull RoutingSessionInfo oldSession, @NonNull MediaRoute2Info route, @NonNull MediaRoute2Info route, Loading @@ -2732,10 +2702,10 @@ class MediaRouter2ServiceImpl { managerRequestId, oldSession, route); managerRequestId, oldSession, route); mSessionCreationRequests.add(request); mSessionCreationRequests.add(request); int transferReason = RoutingSessionInfo.TRANSFER_REASON_APP; int transferReason = if (managerRequestId != MediaRoute2ProviderService.REQUEST_ID_NONE) { managerRequestId != MediaRoute2ProviderService.REQUEST_ID_NONE transferReason = RoutingSessionInfo.TRANSFER_REASON_SYSTEM_REQUEST; ? RoutingSessionInfo.TRANSFER_REASON_SYSTEM_REQUEST } : RoutingSessionInfo.TRANSFER_REASON_APP; provider.requestCreateSession( provider.requestCreateSession( uniqueRequestId, uniqueRequestId, Loading @@ -2743,8 +2713,8 @@ class MediaRouter2ServiceImpl { route.getOriginalId(), route.getOriginalId(), sessionHints, sessionHints, transferReason, transferReason, transferInitiatorUserHandle, UserHandle.of(routerRecord.mUserRecord.mUserId), transferInitiatorPackageName); routerRecord.mPackageName); } } // routerRecord can be null if the session is system's or RCN. // routerRecord can be null if the session is system's or RCN. Loading
services/core/java/com/android/server/media/MediaRouterService.java +2 −11 Original line number Original line Diff line number Diff line Loading @@ -495,18 +495,9 @@ public final class MediaRouterService extends IMediaRouterService.Stub long managerRequestId, long managerRequestId, RoutingSessionInfo oldSession, RoutingSessionInfo oldSession, MediaRoute2Info route, MediaRoute2Info route, Bundle sessionHints, Bundle sessionHints) { @Nullable UserHandle transferInitiatorUserHandle, @Nullable String transferInitiatorPackageName) { mService2.requestCreateSessionWithRouter2( mService2.requestCreateSessionWithRouter2( router, router, requestId, managerRequestId, oldSession, route, sessionHints); requestId, managerRequestId, oldSession, route, sessionHints, transferInitiatorUserHandle, transferInitiatorPackageName); } } // Binder call // Binder call Loading