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

Commit 2610029d authored by Alex Dadukin's avatar Alex Dadukin Committed by Android (Google) Code Review
Browse files

Merge "Add audio policies classes to SystemMediaRoute2Provider" into udc-dev

parents f3e6c5d0 3e8712f0
Loading
Loading
Loading
Loading
+10 −1
Original line number Original line Diff line number Diff line
@@ -53,7 +53,16 @@ import java.util.Objects;
            return new NoOpBluetoothRouteController();
            return new NoOpBluetoothRouteController();
        }
        }


        MediaFeatureFlagManager flagManager = MediaFeatureFlagManager.getInstance();
        boolean isUsingLegacyController = flagManager.getBoolean(
                MediaFeatureFlagManager.FEATURE_AUDIO_STRATEGIES_IS_USING_LEGACY_CONTROLLER,
                true);

        if (isUsingLegacyController) {
            return new LegacyBluetoothRouteController(context, btAdapter, listener);
            return new LegacyBluetoothRouteController(context, btAdapter, listener);
        } else {
            return new AudioPoliciesBluetoothRouteController(context, btAdapter, listener);
        }
    }
    }


    /**
    /**
+16 −4
Original line number Original line Diff line number Diff line
@@ -44,10 +44,22 @@ import android.os.ServiceManager;
        IAudioService audioService = IAudioService.Stub.asInterface(
        IAudioService audioService = IAudioService.Stub.asInterface(
                ServiceManager.getService(Context.AUDIO_SERVICE));
                ServiceManager.getService(Context.AUDIO_SERVICE));


        MediaFeatureFlagManager flagManager = MediaFeatureFlagManager.getInstance();
        boolean isUsingLegacyController = flagManager.getBoolean(
                MediaFeatureFlagManager.FEATURE_AUDIO_STRATEGIES_IS_USING_LEGACY_CONTROLLER,
                true);

        if (isUsingLegacyController) {
            return new LegacyDeviceRouteController(context,
            return new LegacyDeviceRouteController(context,
                    audioManager,
                    audioManager,
                    audioService,
                    audioService,
                    onDeviceRouteChangedListener);
                    onDeviceRouteChangedListener);
        } else {
            return new AudioPoliciesDeviceRouteController(context,
                    audioManager,
                    audioService,
                    onDeviceRouteChangedListener);
        }
    }
    }


    /**
    /**
+3 −3
Original line number Original line Diff line number Diff line
@@ -32,7 +32,7 @@ import java.lang.annotation.Target;
    private static final String NAMESPACE_MEDIA_BETTER_TOGETHER = "media_better_together";
    private static final String NAMESPACE_MEDIA_BETTER_TOGETHER = "media_better_together";


    @StringDef(prefix = "FEATURE_", value = {
    @StringDef(prefix = "FEATURE_", value = {
        FEATURE_IS_USING_LEGACY_BLUETOOTH_CONTROLLER
            FEATURE_AUDIO_STRATEGIES_IS_USING_LEGACY_CONTROLLER
    })
    })
    @Target({ ElementType.TYPE_USE, ElementType.TYPE_PARAMETER })
    @Target({ ElementType.TYPE_USE, ElementType.TYPE_PARAMETER })
    @Retention(RetentionPolicy.SOURCE)
    @Retention(RetentionPolicy.SOURCE)
@@ -43,7 +43,7 @@ import java.lang.annotation.Target;
     * 'Audio Strategies'-aware controller.
     * 'Audio Strategies'-aware controller.
     */
     */
    /* package */ static final @MediaFeatureFlag String
    /* package */ static final @MediaFeatureFlag String
            FEATURE_IS_USING_LEGACY_BLUETOOTH_CONTROLLER =
            FEATURE_AUDIO_STRATEGIES_IS_USING_LEGACY_CONTROLLER =
            "BluetoothRouteController__enable_legacy_bluetooth_routes_controller";
            "BluetoothRouteController__enable_legacy_bluetooth_routes_controller";


    private static final MediaFeatureFlagManager sInstance = new MediaFeatureFlagManager();
    private static final MediaFeatureFlagManager sInstance = new MediaFeatureFlagManager();
@@ -52,7 +52,7 @@ import java.lang.annotation.Target;
        // Empty to prevent instantiation.
        // Empty to prevent instantiation.
    }
    }


    /* package */ MediaFeatureFlagManager getInstance() {
    /* package */ static MediaFeatureFlagManager getInstance() {
        return sInstance;
        return sInstance;
    }
    }