Loading media/java/android/media/IMediaRouterService.aidl +2 −0 Original line number Diff line number Diff line Loading @@ -73,6 +73,8 @@ interface IMediaRouterService { void unregisterManager(IMediaRouter2Manager manager); void setRouteVolumeWithManager(IMediaRouter2Manager manager, int requestId, in MediaRoute2Info route, int volume); void startScan(IMediaRouter2Manager manager); void stopScan(IMediaRouter2Manager manager); void requestCreateSessionWithManager(IMediaRouter2Manager manager, int requestId, in RoutingSessionInfo oldSession, in @nullable MediaRoute2Info route); Loading media/java/android/media/MediaRouter2Manager.java +30 −0 Original line number Diff line number Diff line Loading @@ -146,6 +146,36 @@ public final class MediaRouter2Manager { } } /** * Starts scanning remote routes. * @see #stopScan(String) */ public void startScan() { Client client = getOrCreateClient(); if (client != null) { try { mMediaRouterService.startScan(client); } catch (RemoteException ex) { Log.e(TAG, "Unable to get sessions. Service probably died.", ex); } } } /** * Stops scanning remote routes to reduce resource consumption. * @see #startScan(String) */ public void stopScan() { Client client = getOrCreateClient(); if (client != null) { try { mMediaRouterService.stopScan(client); } catch (RemoteException ex) { Log.e(TAG, "Unable to get sessions. Service probably died.", ex); } } } /** * Gets a {@link android.media.session.MediaController} associated with the * given routing session. Loading media/java/android/media/RouteDiscoveryPreference.java +1 −0 Original line number Diff line number Diff line Loading @@ -153,6 +153,7 @@ public final class RouteDiscoveryPreference implements Parcelable { return false; } RouteDiscoveryPreference other = (RouteDiscoveryPreference) o; //TODO: Make this order-free return Objects.equals(mPreferredFeatures, other.mPreferredFeatures) && mShouldPerformActiveScan == other.mShouldPerformActiveScan; } Loading services/core/java/com/android/server/media/MediaRoute2Provider.java +1 −1 Original line number Diff line number Diff line Loading @@ -77,7 +77,7 @@ abstract class MediaRoute2Provider { @NonNull public List<RoutingSessionInfo> getSessionInfos() { synchronized (mLock) { return mSessionInfos; return new ArrayList<>(mSessionInfos); } } Loading services/core/java/com/android/server/media/MediaRoute2ProviderServiceProxy.java +5 −3 Original line number Diff line number Diff line Loading @@ -108,8 +108,8 @@ final class MediaRoute2ProviderServiceProxy extends MediaRoute2Provider mLastDiscoveryPreference = discoveryPreference; if (mConnectionReady) { mActiveConnection.updateDiscoveryPreference(discoveryPreference); updateBinding(); } updateBinding(); } @Override Loading Loading @@ -205,9 +205,11 @@ final class MediaRoute2ProviderServiceProxy extends MediaRoute2Provider } private boolean shouldBind() { //TODO: Binding could be delayed until it's necessary. if (mRunning) { return true; // Bind when there is a discovery preference or an active route session. return (mLastDiscoveryPreference != null && !mLastDiscoveryPreference.getPreferredFeatures().isEmpty()) || !getSessionInfos().isEmpty(); } return false; } Loading Loading
media/java/android/media/IMediaRouterService.aidl +2 −0 Original line number Diff line number Diff line Loading @@ -73,6 +73,8 @@ interface IMediaRouterService { void unregisterManager(IMediaRouter2Manager manager); void setRouteVolumeWithManager(IMediaRouter2Manager manager, int requestId, in MediaRoute2Info route, int volume); void startScan(IMediaRouter2Manager manager); void stopScan(IMediaRouter2Manager manager); void requestCreateSessionWithManager(IMediaRouter2Manager manager, int requestId, in RoutingSessionInfo oldSession, in @nullable MediaRoute2Info route); Loading
media/java/android/media/MediaRouter2Manager.java +30 −0 Original line number Diff line number Diff line Loading @@ -146,6 +146,36 @@ public final class MediaRouter2Manager { } } /** * Starts scanning remote routes. * @see #stopScan(String) */ public void startScan() { Client client = getOrCreateClient(); if (client != null) { try { mMediaRouterService.startScan(client); } catch (RemoteException ex) { Log.e(TAG, "Unable to get sessions. Service probably died.", ex); } } } /** * Stops scanning remote routes to reduce resource consumption. * @see #startScan(String) */ public void stopScan() { Client client = getOrCreateClient(); if (client != null) { try { mMediaRouterService.stopScan(client); } catch (RemoteException ex) { Log.e(TAG, "Unable to get sessions. Service probably died.", ex); } } } /** * Gets a {@link android.media.session.MediaController} associated with the * given routing session. Loading
media/java/android/media/RouteDiscoveryPreference.java +1 −0 Original line number Diff line number Diff line Loading @@ -153,6 +153,7 @@ public final class RouteDiscoveryPreference implements Parcelable { return false; } RouteDiscoveryPreference other = (RouteDiscoveryPreference) o; //TODO: Make this order-free return Objects.equals(mPreferredFeatures, other.mPreferredFeatures) && mShouldPerformActiveScan == other.mShouldPerformActiveScan; } Loading
services/core/java/com/android/server/media/MediaRoute2Provider.java +1 −1 Original line number Diff line number Diff line Loading @@ -77,7 +77,7 @@ abstract class MediaRoute2Provider { @NonNull public List<RoutingSessionInfo> getSessionInfos() { synchronized (mLock) { return mSessionInfos; return new ArrayList<>(mSessionInfos); } } Loading
services/core/java/com/android/server/media/MediaRoute2ProviderServiceProxy.java +5 −3 Original line number Diff line number Diff line Loading @@ -108,8 +108,8 @@ final class MediaRoute2ProviderServiceProxy extends MediaRoute2Provider mLastDiscoveryPreference = discoveryPreference; if (mConnectionReady) { mActiveConnection.updateDiscoveryPreference(discoveryPreference); updateBinding(); } updateBinding(); } @Override Loading Loading @@ -205,9 +205,11 @@ final class MediaRoute2ProviderServiceProxy extends MediaRoute2Provider } private boolean shouldBind() { //TODO: Binding could be delayed until it's necessary. if (mRunning) { return true; // Bind when there is a discovery preference or an active route session. return (mLastDiscoveryPreference != null && !mLastDiscoveryPreference.getPreferredFeatures().isEmpty()) || !getSessionInfos().isEmpty(); } return false; } Loading