diff options
| author | 2020-01-16 23:24:30 +0000 | |
|---|---|---|
| committer | 2020-01-16 23:24:30 +0000 | |
| commit | 7aa4821b13a6220e99f832169a3059e8bb5b45cc (patch) | |
| tree | 185503e22651316b956cc3c785d258d44d941d09 | |
| parent | cde70623fd70bfd269097c5a496fe8204a5dc7f8 (diff) | |
| parent | e8c4eda30a36fef8ba7cdcab83d2d3a3f3b051c3 (diff) | |
Merge "Annotate atomic DeviceConfig methods for testing."
| -rw-r--r-- | api/test-current.txt | 6 | ||||
| -rw-r--r-- | core/java/android/provider/DeviceConfig.java | 3 | ||||
| -rw-r--r-- | core/java/android/provider/Settings.java | 2 |
3 files changed, 11 insertions, 0 deletions
diff --git a/api/test-current.txt b/api/test-current.txt index 36e2d454528b..28119e3c120b 100644 --- a/api/test-current.txt +++ b/api/test-current.txt @@ -2514,10 +2514,12 @@ package android.provider { method @RequiresPermission("android.permission.READ_DEVICE_CONFIG") public static float getFloat(@NonNull String, @NonNull String, float); method @RequiresPermission("android.permission.READ_DEVICE_CONFIG") public static int getInt(@NonNull String, @NonNull String, int); method @RequiresPermission("android.permission.READ_DEVICE_CONFIG") public static long getLong(@NonNull String, @NonNull String, long); + method @NonNull @RequiresPermission("android.permission.READ_DEVICE_CONFIG") public static android.provider.DeviceConfig.Properties getProperties(@NonNull String, @NonNull java.lang.String...); method @RequiresPermission("android.permission.READ_DEVICE_CONFIG") public static String getProperty(@NonNull String, @NonNull String); method @RequiresPermission("android.permission.READ_DEVICE_CONFIG") public static String getString(@NonNull String, @NonNull String, @Nullable String); 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); field public static final String NAMESPACE_ANDROID = "android"; field public static final String NAMESPACE_AUTOFILL = "autofill"; @@ -2529,6 +2531,10 @@ package android.provider { field public static final String NAMESPACE_ROLLBACK_BOOT = "rollback_boot"; } + public static class DeviceConfig.BadConfigException extends java.lang.Exception { + ctor public DeviceConfig.BadConfigException(); + } + public static interface DeviceConfig.OnPropertiesChangedListener { method public void onPropertiesChanged(@NonNull android.provider.DeviceConfig.Properties); } diff --git a/core/java/android/provider/DeviceConfig.java b/core/java/android/provider/DeviceConfig.java index 6650cf23d611..53f46158238e 100644 --- a/core/java/android/provider/DeviceConfig.java +++ b/core/java/android/provider/DeviceConfig.java @@ -424,6 +424,7 @@ public final class DeviceConfig { * @hide */ @SystemApi + @TestApi @NonNull @RequiresPermission(READ_DEVICE_CONFIG) public static Properties getProperties(@NonNull String namespace, @NonNull String ... names) { @@ -593,6 +594,7 @@ public final class DeviceConfig { * @hide */ @SystemApi + @TestApi @RequiresPermission(WRITE_DEVICE_CONFIG) public static boolean setProperties(@NonNull Properties properties) throws BadConfigException { ContentResolver contentResolver = ActivityThread.currentApplication().getContentResolver(); @@ -817,6 +819,7 @@ public final class DeviceConfig { * @hide */ @SystemApi + @TestApi public static class BadConfigException extends Exception {} /** diff --git a/core/java/android/provider/Settings.java b/core/java/android/provider/Settings.java index 96a4a2f96931..f6633201ec73 100644 --- a/core/java/android/provider/Settings.java +++ b/core/java/android/provider/Settings.java @@ -2746,6 +2746,8 @@ public final class Settings { public ArrayMap<String, String> getStringsForPrefix(ContentResolver cr, String prefix, List<String> names) { + String namespace = prefix.substring(0, prefix.length() - 1); + DeviceConfig.enforceReadPermission(ActivityThread.currentApplication(), namespace); ArrayMap<String, String> keyValues = new ArrayMap<>(); int currentGeneration = -1; |