Loading media/java/android/media/IMediaRouter2.aidl +1 −0 Original line number Diff line number Diff line Loading @@ -40,4 +40,5 @@ oneway interface IMediaRouter2 { in MediaRoute2Info route); void notifyDeviceSuggestionsUpdated(String suggestingPackageName, in List<SuggestedDeviceInfo> suggestions); void notifyDeviceSuggestionRequested(); } media/java/android/media/IMediaRouter2Manager.aidl +1 −0 Original line number Diff line number Diff line Loading @@ -36,6 +36,7 @@ oneway interface IMediaRouter2Manager { in @nullable RouteListingPreference routeListingPreference); void notifyDeviceSuggestionsUpdated(String packageName, String suggestingPackageName, in @nullable List<SuggestedDeviceInfo> suggestedDeviceInfo); void notifyDeviceSuggestionRequested(); void notifyRoutesUpdated(in List<MediaRoute2Info> routes); void notifyRequestFailed(int requestId, int reason); void invalidateInstance(); Loading media/java/android/media/IMediaRouterService.aidl +1 −0 Original line number Diff line number Diff line Loading @@ -107,4 +107,5 @@ interface IMediaRouterService { in @nullable List<SuggestedDeviceInfo> suggestedDeviceInfo); @nullable Map<String, List<SuggestedDeviceInfo>> getDeviceSuggestionsWithManager( IMediaRouter2Manager manager); void onDeviceSuggestionRequestedWithManager(IMediaRouter2Manager manager); } media/java/android/media/MediaRouter2.java +57 −0 Original line number Diff line number Diff line Loading @@ -904,6 +904,17 @@ public final class MediaRouter2 { return mImpl.getDeviceSuggestions(); } /** * Notifies other suggestion providers that a suggestion has been requested. Calling this method * on local routers is a no-op. * * @hide */ @FlaggedApi(FLAG_ENABLE_SUGGESTED_DEVICE_API) public void notifyDeviceSuggestionRequested() { mImpl.notifyDeviceSuggestionRequested(); } /** * Returns the current {@link RouteListingPreference} of the target router. * Loading Loading @@ -1602,6 +1613,13 @@ public final class MediaRouter2 { } } private void notifyCallbacksDeviceSuggestionRequested() { for (DeviceSuggestionsCallbackRecord record : mDeviceSuggestionsCallbackRecords) { record.mExecutor.execute( () -> record.mDeviceSuggestionsCallback.onSuggestionRequested()); } } private void notifyTransfer(RoutingController oldController, RoutingController newController) { for (TransferCallbackRecord record : mTransferCallbackRecords) { record.mExecutor.execute( Loading Loading @@ -1669,6 +1687,9 @@ public final class MediaRouter2 { void onSuggestionUpdated( @NonNull String suggestingPackageName, @Nullable List<SuggestedDeviceInfo> suggestedDeviceInfo); /** Called when a router requests a suggestion from suggestion providers. */ void onSuggestionRequested(); } /** Callback for receiving events about media route discovery. */ Loading Loading @@ -2588,6 +2609,14 @@ public final class MediaRouter2 { suggestions)); } @Override public void notifyDeviceSuggestionRequested() { mHandler.sendMessage( obtainMessage( MediaRouter2::notifyCallbacksDeviceSuggestionRequested, MediaRouter2.this)); } @Override public void requestCreateSessionByManager( long managerRequestId, RoutingSessionInfo oldSession, MediaRoute2Info route) { Loading Loading @@ -2635,6 +2664,8 @@ public final class MediaRouter2 { @Nullable Map<String, List<SuggestedDeviceInfo>> getDeviceSuggestions(); void notifyDeviceSuggestionRequested(); boolean showSystemOutputSwitcher(); List<MediaRoute2Info> getAllRoutes(); Loading Loading @@ -2857,6 +2888,15 @@ public final class MediaRouter2 { } } @Override public void notifyDeviceSuggestionRequested() { try { mMediaRouterService.onDeviceSuggestionRequestedWithManager(mClient); } catch (RemoteException ex) { throw ex.rethrowFromSystemServer(); } } @Override public boolean showSystemOutputSwitcher() { try { Loading Loading @@ -3484,6 +3524,10 @@ public final class MediaRouter2 { notifyDeviceSuggestionsUpdated(suggestingPackageName, suggestedDeviceInfo); } private void notifyDeviceSuggestionRequestedHandler() { notifyCallbacksDeviceSuggestionRequested(); } private void onRequestFailedOnHandler(int requestId, int reason) { MediaRouter2Manager.TransferRequest matchingRequest = null; for (MediaRouter2Manager.TransferRequest request : mTransferRequests) { Loading Loading @@ -3591,6 +3635,14 @@ public final class MediaRouter2 { deviceSuggestions)); } @Override public void notifyDeviceSuggestionRequested() { mHandler.sendMessage( obtainMessage( ProxyMediaRouter2Impl::notifyDeviceSuggestionRequestedHandler, ProxyMediaRouter2Impl.this)); } @Override public void notifyRoutesUpdated(List<MediaRoute2Info> routes) { mHandler.sendMessage( Loading Loading @@ -3778,6 +3830,11 @@ public final class MediaRouter2 { } } @Override public void notifyDeviceSuggestionRequested() { // no-op, local routers can not call this method. } @Override public boolean showSystemOutputSwitcher() { synchronized (mLock) { Loading media/java/android/media/MediaRouter2Manager.java +5 −0 Original line number Diff line number Diff line Loading @@ -1145,6 +1145,11 @@ public final class MediaRouter2Manager { // MediaRouter2Manager doesn't support device suggestions } @Override public void notifyDeviceSuggestionRequested() { // MediaRouter2Manager doesn't support device suggestions } @Override public void notifyRoutesUpdated(List<MediaRoute2Info> routes) { mHandler.sendMessage( Loading Loading
media/java/android/media/IMediaRouter2.aidl +1 −0 Original line number Diff line number Diff line Loading @@ -40,4 +40,5 @@ oneway interface IMediaRouter2 { in MediaRoute2Info route); void notifyDeviceSuggestionsUpdated(String suggestingPackageName, in List<SuggestedDeviceInfo> suggestions); void notifyDeviceSuggestionRequested(); }
media/java/android/media/IMediaRouter2Manager.aidl +1 −0 Original line number Diff line number Diff line Loading @@ -36,6 +36,7 @@ oneway interface IMediaRouter2Manager { in @nullable RouteListingPreference routeListingPreference); void notifyDeviceSuggestionsUpdated(String packageName, String suggestingPackageName, in @nullable List<SuggestedDeviceInfo> suggestedDeviceInfo); void notifyDeviceSuggestionRequested(); void notifyRoutesUpdated(in List<MediaRoute2Info> routes); void notifyRequestFailed(int requestId, int reason); void invalidateInstance(); Loading
media/java/android/media/IMediaRouterService.aidl +1 −0 Original line number Diff line number Diff line Loading @@ -107,4 +107,5 @@ interface IMediaRouterService { in @nullable List<SuggestedDeviceInfo> suggestedDeviceInfo); @nullable Map<String, List<SuggestedDeviceInfo>> getDeviceSuggestionsWithManager( IMediaRouter2Manager manager); void onDeviceSuggestionRequestedWithManager(IMediaRouter2Manager manager); }
media/java/android/media/MediaRouter2.java +57 −0 Original line number Diff line number Diff line Loading @@ -904,6 +904,17 @@ public final class MediaRouter2 { return mImpl.getDeviceSuggestions(); } /** * Notifies other suggestion providers that a suggestion has been requested. Calling this method * on local routers is a no-op. * * @hide */ @FlaggedApi(FLAG_ENABLE_SUGGESTED_DEVICE_API) public void notifyDeviceSuggestionRequested() { mImpl.notifyDeviceSuggestionRequested(); } /** * Returns the current {@link RouteListingPreference} of the target router. * Loading Loading @@ -1602,6 +1613,13 @@ public final class MediaRouter2 { } } private void notifyCallbacksDeviceSuggestionRequested() { for (DeviceSuggestionsCallbackRecord record : mDeviceSuggestionsCallbackRecords) { record.mExecutor.execute( () -> record.mDeviceSuggestionsCallback.onSuggestionRequested()); } } private void notifyTransfer(RoutingController oldController, RoutingController newController) { for (TransferCallbackRecord record : mTransferCallbackRecords) { record.mExecutor.execute( Loading Loading @@ -1669,6 +1687,9 @@ public final class MediaRouter2 { void onSuggestionUpdated( @NonNull String suggestingPackageName, @Nullable List<SuggestedDeviceInfo> suggestedDeviceInfo); /** Called when a router requests a suggestion from suggestion providers. */ void onSuggestionRequested(); } /** Callback for receiving events about media route discovery. */ Loading Loading @@ -2588,6 +2609,14 @@ public final class MediaRouter2 { suggestions)); } @Override public void notifyDeviceSuggestionRequested() { mHandler.sendMessage( obtainMessage( MediaRouter2::notifyCallbacksDeviceSuggestionRequested, MediaRouter2.this)); } @Override public void requestCreateSessionByManager( long managerRequestId, RoutingSessionInfo oldSession, MediaRoute2Info route) { Loading Loading @@ -2635,6 +2664,8 @@ public final class MediaRouter2 { @Nullable Map<String, List<SuggestedDeviceInfo>> getDeviceSuggestions(); void notifyDeviceSuggestionRequested(); boolean showSystemOutputSwitcher(); List<MediaRoute2Info> getAllRoutes(); Loading Loading @@ -2857,6 +2888,15 @@ public final class MediaRouter2 { } } @Override public void notifyDeviceSuggestionRequested() { try { mMediaRouterService.onDeviceSuggestionRequestedWithManager(mClient); } catch (RemoteException ex) { throw ex.rethrowFromSystemServer(); } } @Override public boolean showSystemOutputSwitcher() { try { Loading Loading @@ -3484,6 +3524,10 @@ public final class MediaRouter2 { notifyDeviceSuggestionsUpdated(suggestingPackageName, suggestedDeviceInfo); } private void notifyDeviceSuggestionRequestedHandler() { notifyCallbacksDeviceSuggestionRequested(); } private void onRequestFailedOnHandler(int requestId, int reason) { MediaRouter2Manager.TransferRequest matchingRequest = null; for (MediaRouter2Manager.TransferRequest request : mTransferRequests) { Loading Loading @@ -3591,6 +3635,14 @@ public final class MediaRouter2 { deviceSuggestions)); } @Override public void notifyDeviceSuggestionRequested() { mHandler.sendMessage( obtainMessage( ProxyMediaRouter2Impl::notifyDeviceSuggestionRequestedHandler, ProxyMediaRouter2Impl.this)); } @Override public void notifyRoutesUpdated(List<MediaRoute2Info> routes) { mHandler.sendMessage( Loading Loading @@ -3778,6 +3830,11 @@ public final class MediaRouter2 { } } @Override public void notifyDeviceSuggestionRequested() { // no-op, local routers can not call this method. } @Override public boolean showSystemOutputSwitcher() { synchronized (mLock) { Loading
media/java/android/media/MediaRouter2Manager.java +5 −0 Original line number Diff line number Diff line Loading @@ -1145,6 +1145,11 @@ public final class MediaRouter2Manager { // MediaRouter2Manager doesn't support device suggestions } @Override public void notifyDeviceSuggestionRequested() { // MediaRouter2Manager doesn't support device suggestions } @Override public void notifyRoutesUpdated(List<MediaRoute2Info> routes) { mHandler.sendMessage( Loading