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

Commit 112419e7 authored by Hassan Ali's avatar Hassan Ali
Browse files

Expose DeviceConfig APIs

As part of moving DeviceConfig.java to packages/modules/ConfigInfrastructure.
Need to expose deviceconfig hidden apis to be able to access it
from framwork/base module.

Test: m update-api
Bug: 258220607
Change-Id: I606d0ffd29d10bce7b265f4a7b1cb75d586f9de5
parent 1d9b83ed
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
@@ -10537,17 +10537,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";
@@ -10559,13 +10564,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";
@@ -10587,6 +10595,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
@@ -2176,17 +2176,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;