Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ac552084 authored by Iván Budnik's avatar Iván Budnik Committed by Android (Google) Code Review
Browse files

Merge "Hide cross-user getInstance() and promote non-cross-user getInstance()" into main

parents f24232b9 9bbb3d6b
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -24299,7 +24299,7 @@ package android.media {
    method @Nullable public android.media.MediaRouter2.RoutingController getController(@NonNull String);
    method @NonNull public java.util.List<android.media.MediaRouter2.RoutingController> getControllers();
    method @NonNull public static android.media.MediaRouter2 getInstance(@NonNull android.content.Context);
    method @FlaggedApi("com.android.media.flags.enable_cross_user_routing_in_media_router2") @NonNull @RequiresPermission(anyOf={android.Manifest.permission.MEDIA_CONTENT_CONTROL, android.Manifest.permission.MEDIA_ROUTING_CONTROL}) public static android.media.MediaRouter2 getInstance(@NonNull android.content.Context, @NonNull String, @NonNull android.os.UserHandle);
    method @FlaggedApi("com.android.media.flags.enable_cross_user_routing_in_media_router2") @Nullable @RequiresPermission(anyOf={android.Manifest.permission.MEDIA_CONTENT_CONTROL, android.Manifest.permission.MEDIA_ROUTING_CONTROL}) public static android.media.MediaRouter2 getInstance(@NonNull android.content.Context, @NonNull String);
    method @FlaggedApi("com.android.media.flags.enable_rlp_callbacks_in_media_router2") @Nullable public android.media.RouteListingPreference getRouteListingPreference();
    method @NonNull public java.util.List<android.media.MediaRoute2Info> getRoutes();
    method @NonNull public android.media.MediaRouter2.RoutingController getSystemController();
+0 −1
Original line number Diff line number Diff line
@@ -6886,7 +6886,6 @@ package android.media {
  public final class MediaRouter2 {
    method @NonNull public java.util.List<android.media.MediaRoute2Info> getAllRoutes();
    method @Nullable public String getClientPackageName();
    method @Nullable @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public static android.media.MediaRouter2 getInstance(@NonNull android.content.Context, @NonNull String);
    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void setRouteVolume(@NonNull android.media.MediaRoute2Info, int);
    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void startScan();
    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void stopScan();
+15 −17
Original line number Diff line number Diff line
@@ -183,23 +183,23 @@ public final class MediaRouter2 {
     *       preference} passed by a proxy router. Use {@link RouteDiscoveryPreference#EMPTY} when
     *       setting a route callback.
     *   <li>
     *       <p>Methods returning non-system {@link RoutingController controllers} always return
     *       new instances with the latest data. Do not attempt to compare or store them. Instead,
     *       use {@link #getController(String)} or {@link #getControllers()} to query the most
     *       <p>Methods returning non-system {@link RoutingController controllers} always return new
     *       instances with the latest data. Do not attempt to compare or store them. Instead, use
     *       {@link #getController(String)} or {@link #getControllers()} to query the most
     *       up-to-date state.
     *   <li>
     *       <p>Calls to {@link #setOnGetControllerHintsListener} are ignored.
     * </ul>
     *
     * @param clientPackageName the package name of the app to control
     * @throws SecurityException if the caller doesn't have {@link
     *     Manifest.permission#MEDIA_CONTENT_CONTROL MEDIA_CONTENT_CONTROL} permission.
     * @hide
     * @return a proxy MediaRouter2 instance if {@code clientPackageName} exists or {@code null}.
     */
    // TODO (b/311711420): Deprecate once #getInstance(Context, String, UserHandle) reaches public
    //  SDK.
    @SystemApi
    @RequiresPermission(Manifest.permission.MEDIA_CONTENT_CONTROL)
    @FlaggedApi(FLAG_ENABLE_CROSS_USER_ROUTING_IN_MEDIA_ROUTER2)
    @RequiresPermission(
            anyOf = {
                Manifest.permission.MEDIA_CONTENT_CONTROL,
                Manifest.permission.MEDIA_ROUTING_CONTROL
            })
    @Nullable
    public static MediaRouter2 getInstance(
            @NonNull Context context, @NonNull String clientPackageName) {
@@ -226,9 +226,9 @@ public final class MediaRouter2 {
     *       {@link RouteDiscoveryPreference.Builder#setPreferredFeatures(List) preferred features}
     *       when setting a route callback.
     *   <li>
     *       <p>Methods returning non-system {@link RoutingController controllers} always return
     *       new instances with the latest data. Do not attempt to compare or store them. Instead,
     *       use {@link #getController(String)} or {@link #getControllers()} to query the most
     *       <p>Methods returning non-system {@link RoutingController controllers} always return new
     *       instances with the latest data. Do not attempt to compare or store them. Instead, use
     *       {@link #getController(String)} or {@link #getControllers()} to query the most
     *       up-to-date state.
     *   <li>
     *       <p>Calls to {@link #setOnGetControllerHintsListener} are ignored.
@@ -242,8 +242,8 @@ public final class MediaRouter2 {
     * @throws SecurityException if {@code user} does not match {@link Process#myUserHandle()} and
     *     the caller does not hold {@code Manifest.permission#INTERACT_ACROSS_USERS_FULL}.
     * @throws IllegalArgumentException if {@code clientPackageName} does not exist in {@code user}.
     * @hide
     */
    @FlaggedApi(FLAG_ENABLE_CROSS_USER_ROUTING_IN_MEDIA_ROUTER2)
    @RequiresPermission(
            anyOf = {
                Manifest.permission.MEDIA_CONTENT_CONTROL,
@@ -251,9 +251,7 @@ public final class MediaRouter2 {
            })
    @NonNull
    public static MediaRouter2 getInstance(
            @NonNull Context context,
            @NonNull String clientPackageName,
            @NonNull UserHandle user) {
            @NonNull Context context, @NonNull String clientPackageName, @NonNull UserHandle user) {
        return findOrCreateProxyInstanceForCallingUser(context, clientPackageName, user);
    }