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

Commit 25f95ab4 authored by Hassan Ali's avatar Hassan Ali Committed by Android (Google) Code Review
Browse files

Merge "Expose DeviceConfig APIs"

parents 3ee31de1 112419e7
Loading
Loading
Loading
Loading
+28 −0
Original line number Diff line number Diff line
@@ -419,10 +419,38 @@ package android.provider {
  }

  public final class DeviceConfig {
    field public static final String NAMESPACE_ACTIVITY_MANAGER_COMPONENT_ALIAS = "activity_manager_ca";
    field public static final String NAMESPACE_ALARM_MANAGER = "alarm_manager";
    field public static final String NAMESPACE_APP_CLONING = "app_cloning";
    field public static final String NAMESPACE_APP_STANDBY = "app_standby";
    field public static final String NAMESPACE_ARC_APP_COMPAT = "arc_app_compat";
    field public static final String NAMESPACE_CONFIGURATION = "configuration";
    field public static final String NAMESPACE_CONNECTIVITY_THERMAL_POWER_MANAGER = "connectivity_thermal_power_manager";
    field public static final String NAMESPACE_CONTACTS_PROVIDER = "contacts_provider";
    field public static final String NAMESPACE_DEVICE_IDLE = "device_idle";
    field public static final String NAMESPACE_DEVICE_POLICY_MANAGER = "device_policy_manager";
    field public static final String NAMESPACE_GAME_OVERLAY = "game_overlay";
    field public static final String NAMESPACE_INTELLIGENCE_CONTENT_SUGGESTIONS = "intelligence_content_suggestions";
    field public static final String NAMESPACE_INTERACTION_JANK_MONITOR = "interaction_jank_monitor";
    field public static final String NAMESPACE_LATENCY_TRACKER = "latency_tracker";
    field public static final String NAMESPACE_MEMORY_SAFETY_NATIVE = "memory_safety_native";
    field public static final String NAMESPACE_MGLRU_NATIVE = "mglru_native";
    field public static final String NAMESPACE_REMOTE_KEY_PROVISIONING_NATIVE = "remote_key_provisioning_native";
    field public static final String NAMESPACE_ROTATION_RESOLVER = "rotation_resolver";
    field public static final String NAMESPACE_SETTINGS_STATS = "settings_stats";
    field public static final String NAMESPACE_SETTINGS_UI = "settings_ui";
    field public static final String NAMESPACE_TARE = "tare";
    field public static final String NAMESPACE_VENDOR_SYSTEM_NATIVE = "vendor_system_native";
    field public static final String NAMESPACE_VENDOR_SYSTEM_NATIVE_BOOT = "vendor_system_native_boot";
    field public static final String NAMESPACE_VIRTUALIZATION_FRAMEWORK_NATIVE = "virtualization_framework_native";
    field public static final String NAMESPACE_VOICE_INTERACTION = "voice_interaction";
    field public static final String NAMESPACE_WEAR = "wear";
    field public static final String NAMESPACE_WIDGET = "widget";
    field public static final String NAMESPACE_WINDOW_MANAGER = "window_manager";
  }

  public static class DeviceConfig.Properties {
    ctor public DeviceConfig.Properties(@NonNull String, @Nullable java.util.Map<java.lang.String,java.lang.String>);
  }

  public final class Settings {
+9 −0
Original line number Diff line number Diff line
@@ -10712,17 +10712,22 @@ package android.provider {
    method @RequiresPermission(android.Manifest.permission.READ_DEVICE_CONFIG) public static long getLong(@NonNull String, @NonNull String, long);
    method @NonNull @RequiresPermission(android.Manifest.permission.READ_DEVICE_CONFIG) public static android.provider.DeviceConfig.Properties getProperties(@NonNull String, @NonNull java.lang.String...);
    method @RequiresPermission(android.Manifest.permission.READ_DEVICE_CONFIG) public static String getProperty(@NonNull String, @NonNull String);
    method @NonNull public static java.util.List<java.lang.String> getPublicNamespaces();
    method @RequiresPermission(android.Manifest.permission.READ_DEVICE_CONFIG) public static String getString(@NonNull String, @NonNull String, @Nullable String);
    method @RequiresPermission(android.Manifest.permission.WRITE_DEVICE_CONFIG) public static int getSyncDisabledMode();
    method public static void removeOnPropertiesChangedListener(@NonNull android.provider.DeviceConfig.OnPropertiesChangedListener);
    method @RequiresPermission(android.Manifest.permission.WRITE_DEVICE_CONFIG) public static void resetToDefaults(int, @Nullable String);
    method @RequiresPermission(android.Manifest.permission.WRITE_DEVICE_CONFIG) public static boolean setProperties(@NonNull android.provider.DeviceConfig.Properties) throws android.provider.DeviceConfig.BadConfigException;
    method @RequiresPermission(android.Manifest.permission.WRITE_DEVICE_CONFIG) public static boolean setProperty(@NonNull String, @NonNull String, @Nullable String, boolean);
    method @RequiresPermission(android.Manifest.permission.WRITE_DEVICE_CONFIG) public static void setSyncDisabledMode(int);
    field public static final String NAMESPACE_ACTIVITY_MANAGER = "activity_manager";
    field public static final String NAMESPACE_ACTIVITY_MANAGER_NATIVE_BOOT = "activity_manager_native_boot";
    field public static final String NAMESPACE_ADSERVICES = "adservices";
    field public static final String NAMESPACE_AMBIENT_CONTEXT_MANAGER_SERVICE = "ambient_context_manager_service";
    field public static final String NAMESPACE_ANDROID = "android";
    field public static final String NAMESPACE_APPSEARCH = "appsearch";
    field public static final String NAMESPACE_APP_COMPAT = "app_compat";
    field public static final String NAMESPACE_APP_COMPAT_OVERRIDES = "app_compat_overrides";
    field public static final String NAMESPACE_APP_HIBERNATION = "app_hibernation";
    field public static final String NAMESPACE_ATTENTION_MANAGER_SERVICE = "attention_manager_service";
    field public static final String NAMESPACE_AUTOFILL = "autofill";
@@ -10734,13 +10739,16 @@ package android.provider {
    field public static final String NAMESPACE_CAPTIVEPORTALLOGIN = "captive_portal_login";
    field public static final String NAMESPACE_CLIPBOARD = "clipboard";
    field public static final String NAMESPACE_CONNECTIVITY = "connectivity";
    field public static final String NAMESPACE_CONSTRAIN_DISPLAY_APIS = "constrain_display_apis";
    field public static final String NAMESPACE_CONTENT_CAPTURE = "content_capture";
    field @Deprecated public static final String NAMESPACE_DEX_BOOT = "dex_boot";
    field public static final String NAMESPACE_DISPLAY_MANAGER = "display_manager";
    field public static final String NAMESPACE_GAME_DRIVER = "game_driver";
    field public static final String NAMESPACE_HDMI_CONTROL = "hdmi_control";
    field public static final String NAMESPACE_INPUT_METHOD_MANAGER = "input_method_manager";
    field public static final String NAMESPACE_INPUT_NATIVE_BOOT = "input_native_boot";
    field public static final String NAMESPACE_INTELLIGENCE_ATTENTION = "intelligence_attention";
    field public static final String NAMESPACE_JOB_SCHEDULER = "jobscheduler";
    field public static final String NAMESPACE_LMKD_NATIVE = "lmkd_native";
    field public static final String NAMESPACE_LOCATION = "location";
    field public static final String NAMESPACE_MEDIA = "media";
@@ -10762,6 +10770,7 @@ package android.provider {
    field public static final String NAMESPACE_RUNTIME_NATIVE_BOOT = "runtime_native_boot";
    field public static final String NAMESPACE_SCHEDULER = "scheduler";
    field public static final String NAMESPACE_SDK_SANDBOX = "sdk_sandbox";
    field public static final String NAMESPACE_SELECTION_TOOLBAR = "selection_toolbar";
    field public static final String NAMESPACE_STATSD_JAVA = "statsd_java";
    field public static final String NAMESPACE_STATSD_JAVA_BOOT = "statsd_java_boot";
    field public static final String NAMESPACE_STATSD_NATIVE = "statsd_native";
+0 −11
Original line number Diff line number Diff line
@@ -2190,17 +2190,6 @@ package android.provider {
    field public static final android.net.Uri CORP_CONTENT_URI;
  }

  public final class DeviceConfig {
    field public static final String NAMESPACE_ALARM_MANAGER = "alarm_manager";
    field public static final String NAMESPACE_ANDROID = "android";
    field public static final String NAMESPACE_APP_COMPAT_OVERRIDES = "app_compat_overrides";
    field public static final String NAMESPACE_CONSTRAIN_DISPLAY_APIS = "constrain_display_apis";
    field public static final String NAMESPACE_DEVICE_IDLE = "device_idle";
    field public static final String NAMESPACE_INPUT_METHOD_MANAGER = "input_method_manager";
    field public static final String NAMESPACE_JOB_SCHEDULER = "jobscheduler";
    field public static final String NAMESPACE_SELECTION_TOOLBAR = "selection_toolbar";
  }

  public interface InputMethodManagerDeviceConfig {
    field public static final String KEY_HIDE_IME_WHEN_NO_EDITOR_FOCUS = "hide_ime_when_no_editor_focus";
  }
+37 −10
Original line number Diff line number Diff line
@@ -23,8 +23,8 @@ import android.annotation.CallbackExecutor;
import android.annotation.NonNull;
import android.annotation.Nullable;
import android.annotation.RequiresPermission;
import android.annotation.SuppressLint;
import android.annotation.SystemApi;
import android.annotation.TestApi;
import android.content.pm.PackageManager;
import android.database.ContentObserver;
import android.net.Uri;
@@ -68,6 +68,7 @@ public final class DeviceConfig {
     * different namespace in order to avoid phonetype from resetting it.
     * @hide
     */
    @SystemApi(client = SystemApi.Client.MODULE_LIBRARIES)
    public static final String NAMESPACE_ACTIVITY_MANAGER_COMPONENT_ALIAS = "activity_manager_ca";

    /**
@@ -86,7 +87,6 @@ public final class DeviceConfig {
     * @hide
     */
    @SystemApi(client = SystemApi.Client.MODULE_LIBRARIES)
    @TestApi
    public static final String NAMESPACE_ALARM_MANAGER = "alarm_manager";

    /**
@@ -224,7 +224,6 @@ public final class DeviceConfig {
     * @hide
     */
    @SystemApi(client = SystemApi.Client.MODULE_LIBRARIES)
    @TestApi
    public static final String NAMESPACE_DEVICE_IDLE = "device_idle";

    /**
@@ -284,6 +283,7 @@ public final class DeviceConfig {
     *
     * @hide
     */
    @SystemApi(client = SystemApi.Client.MODULE_LIBRARIES)
    public static final String NAMESPACE_INTELLIGENCE_CONTENT_SUGGESTIONS =
            "intelligence_content_suggestions";

@@ -291,7 +291,7 @@ public final class DeviceConfig {
     * Namespace for JobScheduler configurations.
     * @hide
     */
    @TestApi
    @SystemApi
    public static final String NAMESPACE_JOB_SCHEDULER = "jobscheduler";

    /**
@@ -331,6 +331,7 @@ public final class DeviceConfig {
     *
     * @hide
     */
    @SystemApi(client = SystemApi.Client.MODULE_LIBRARIES)
    public static final String NAMESPACE_MGLRU_NATIVE = "mglru_native";

    /**
@@ -386,6 +387,7 @@ public final class DeviceConfig {
     *
     * @hide
     */
    @SystemApi(client = SystemApi.Client.MODULE_LIBRARIES)
    public static final String NAMESPACE_REMOTE_KEY_PROVISIONING_NATIVE =
            "remote_key_provisioning_native";

@@ -410,6 +412,7 @@ public final class DeviceConfig {
     *
     * @hide
     */
    @SystemApi(client = SystemApi.Client.MODULE_LIBRARIES)
    public static final String NAMESPACE_ROTATION_RESOLVER = "rotation_resolver";

    /**
@@ -461,6 +464,7 @@ public final class DeviceConfig {
     *
     * @hide
     */
    @SystemApi(client = SystemApi.Client.MODULE_LIBRARIES)
    public static final String NAMESPACE_SETTINGS_STATS = "settings_stats";

    /**
@@ -560,6 +564,7 @@ public final class DeviceConfig {
     *
     * @hide
     */
    @SystemApi(client = SystemApi.Client.MODULE_LIBRARIES)
    public static final String NAMESPACE_TARE = "tare";

    /**
@@ -584,6 +589,7 @@ public final class DeviceConfig {
     *
     * @hide
     */
    @SystemApi(client = SystemApi.Client.MODULE_LIBRARIES)
    public static final String NAMESPACE_CONTACTS_PROVIDER = "contacts_provider";

    /**
@@ -591,6 +597,7 @@ public final class DeviceConfig {
     *
     * @hide
     */
    @SystemApi(client = SystemApi.Client.MODULE_LIBRARIES)
    public static final String NAMESPACE_SETTINGS_UI = "settings_ui";

    /**
@@ -601,7 +608,7 @@ public final class DeviceConfig {
     *
     * @hide
     */
    @TestApi
    @SystemApi
    public static final String NAMESPACE_ANDROID = "android";

    /**
@@ -609,6 +616,7 @@ public final class DeviceConfig {
     *
     * @hide
     */
    @SystemApi(client = SystemApi.Client.MODULE_LIBRARIES)
    public static final String NAMESPACE_WINDOW_MANAGER = "window_manager";

    /**
@@ -625,7 +633,7 @@ public final class DeviceConfig {
     *
     * @hide
     */
    @TestApi
    @SystemApi
    public static final String NAMESPACE_SELECTION_TOOLBAR = "selection_toolbar";

    /**
@@ -633,6 +641,7 @@ public final class DeviceConfig {
     *
     * @hide
     */
    @SystemApi(client = SystemApi.Client.MODULE_LIBRARIES)
    public static final String NAMESPACE_VOICE_INTERACTION = "voice_interaction";

    /**
@@ -640,6 +649,7 @@ public final class DeviceConfig {
     *
     * @hide
     */
    @SystemApi(client = SystemApi.Client.MODULE_LIBRARIES)
    public static final String NAMESPACE_DEVICE_POLICY_MANAGER =
            "device_policy_manager";

@@ -690,6 +700,7 @@ public final class DeviceConfig {
     *
     * @hide
     */
    @SystemApi(client = SystemApi.Client.MODULE_LIBRARIES)
    public static final String NAMESPACE_WIDGET = "widget";

    /**
@@ -697,6 +708,7 @@ public final class DeviceConfig {
     *
     * @hide
     */
    @SystemApi(client = SystemApi.Client.MODULE_LIBRARIES)
    public static final String NAMESPACE_CONNECTIVITY_THERMAL_POWER_MANAGER =
            "connectivity_thermal_power_manager";

@@ -705,6 +717,7 @@ public final class DeviceConfig {
     *
     * @hide
     */
    @SystemApi(client = SystemApi.Client.MODULE_LIBRARIES)
    public static final String NAMESPACE_CONFIGURATION = "configuration";

    /**
@@ -712,6 +725,7 @@ public final class DeviceConfig {
     *
     * @hide
     */
    @SystemApi(client = SystemApi.Client.MODULE_LIBRARIES)
    public static final String NAMESPACE_LATENCY_TRACKER = "latency_tracker";

    /**
@@ -719,6 +733,8 @@ public final class DeviceConfig {
     *
     * @hide
     */
    @SystemApi(client = SystemApi.Client.MODULE_LIBRARIES)
    @SuppressLint("IntentName")
    public static final String NAMESPACE_INTERACTION_JANK_MONITOR = "interaction_jank_monitor";

    /**
@@ -726,6 +742,7 @@ public final class DeviceConfig {
     *
     * @hide
     */
    @SystemApi(client = SystemApi.Client.MODULE_LIBRARIES)
    public static final String NAMESPACE_GAME_OVERLAY = "game_overlay";

    /**
@@ -733,6 +750,7 @@ public final class DeviceConfig {
     *
     * @hide
     */
    @SystemApi(client = SystemApi.Client.MODULE_LIBRARIES)
    public static final String NAMESPACE_VIRTUALIZATION_FRAMEWORK_NATIVE =
            "virtualization_framework_native";

@@ -741,7 +759,7 @@ public final class DeviceConfig {
     *
     * @hide
     */
    @TestApi
    @SystemApi
    public static final String NAMESPACE_CONSTRAIN_DISPLAY_APIS = "constrain_display_apis";

    /**
@@ -749,7 +767,7 @@ public final class DeviceConfig {
     *
     * @hide
     */
    @TestApi
    @SystemApi
    public static final String NAMESPACE_APP_COMPAT_OVERRIDES = "app_compat_overrides";

    /**
@@ -783,6 +801,7 @@ public final class DeviceConfig {
     *
     * @hide
     */
    @SystemApi(client = SystemApi.Client.MODULE_LIBRARIES)
    public static final String NAMESPACE_VENDOR_SYSTEM_NATIVE = "vendor_system_native";

    /**
@@ -790,6 +809,7 @@ public final class DeviceConfig {
     *
     * @hide
     */
    @SystemApi(client = SystemApi.Client.MODULE_LIBRARIES)
    public static final String NAMESPACE_VENDOR_SYSTEM_NATIVE_BOOT = "vendor_system_native_boot";

    /**
@@ -797,6 +817,7 @@ public final class DeviceConfig {
     *
     * @hide
     */
    @SystemApi(client = SystemApi.Client.MODULE_LIBRARIES)
    public static final String NAMESPACE_MEMORY_SAFETY_NATIVE = "memory_safety_native";

    /**
@@ -804,6 +825,7 @@ public final class DeviceConfig {
     *
     * @hide
     */
    @SystemApi(client = SystemApi.Client.MODULE_LIBRARIES)
    public static final String NAMESPACE_WEAR = "wear";

    /**
@@ -819,7 +841,7 @@ public final class DeviceConfig {
     *
     * @hide
     */
    @TestApi
    @SystemApi
    public static final String NAMESPACE_INPUT_METHOD_MANAGER = "input_method_manager";

    /**
@@ -835,6 +857,7 @@ public final class DeviceConfig {
     *
     * @hide
     */
    @SystemApi(client = SystemApi.Client.MODULE_LIBRARIES)
    public static final String NAMESPACE_ARC_APP_COMPAT = "arc_app_compat";

    private static final Object sLock = new Object();
@@ -1112,6 +1135,7 @@ public final class DeviceConfig {
     * @see #getSyncDisabledMode()
     * @hide
     */
    @SystemApi
    @RequiresPermission(WRITE_DEVICE_CONFIG)
    public static void setSyncDisabledMode(@SyncDisabledMode int syncDisabledMode) {
        Settings.Config.setSyncDisabledMode(syncDisabledMode);
@@ -1123,6 +1147,7 @@ public final class DeviceConfig {
     * @see #setSyncDisabledMode(int)
     * @hide
     */
    @SystemApi
    @RequiresPermission(WRITE_DEVICE_CONFIG)
    public static @SyncDisabledMode int getSyncDisabledMode() {
        return Settings.Config.getSyncDisabledMode();
@@ -1274,7 +1299,7 @@ public final class DeviceConfig {
     * Enforces READ_DEVICE_CONFIG permission if namespace is not one of public namespaces.
     * @hide
     */
    public static void enforceReadPermission(String namespace) {
    public static void enforceReadPermission(@NonNull String namespace) {
        if (Settings.Config.checkCallingOrSelfPermission(READ_DEVICE_CONFIG)
                != PackageManager.PERMISSION_GRANTED) {
            if (!PUBLIC_NAMESPACES.contains(namespace)) {
@@ -1288,6 +1313,7 @@ public final class DeviceConfig {
     * Returns list of namespaces that can be read without READ_DEVICE_CONFIG_PERMISSION;
     * @hide
     */
    @SystemApi
    public static @NonNull List<String> getPublicNamespaces() {
        return PUBLIC_NAMESPACES;
    }
@@ -1344,6 +1370,7 @@ public final class DeviceConfig {
         * @param keyValueMap A map between property names and property values.
         * @hide
         */
        @SystemApi(client = SystemApi.Client.MODULE_LIBRARIES)
        public Properties(@NonNull String namespace, @Nullable Map<String, String> keyValueMap) {
            Preconditions.checkNotNull(namespace);
            mNamespace = namespace;