diff options
| -rw-r--r-- | Android.bp | 1 | ||||
| -rw-r--r-- | core/java/com/android/internal/pm/pkg/component/AconfigFlags.java | 31 | ||||
| -rw-r--r-- | packages/SettingsProvider/src/com/android/providers/settings/DeviceConfigService.java | 9 |
3 files changed, 8 insertions, 33 deletions
diff --git a/Android.bp b/Android.bp index 9933940c436c..f0aa62cc37ae 100644 --- a/Android.bp +++ b/Android.bp @@ -427,7 +427,6 @@ java_defaults { "modules-utils-expresslog", "perfetto_trace_javastream_protos_jarjar", "libaconfig_java_proto_nano", - "aconfig_device_paths_java", ], } diff --git a/core/java/com/android/internal/pm/pkg/component/AconfigFlags.java b/core/java/com/android/internal/pm/pkg/component/AconfigFlags.java index 086fcc896d97..f306b0b02677 100644 --- a/core/java/com/android/internal/pm/pkg/component/AconfigFlags.java +++ b/core/java/com/android/internal/pm/pkg/component/AconfigFlags.java @@ -18,7 +18,6 @@ package com.android.internal.pm.pkg.component; import static com.android.internal.pm.pkg.parsing.ParsingUtils.ANDROID_RES_NAMESPACE; -import android.aconfig.DevicePaths; import android.aconfig.nano.Aconfig; import android.aconfig.nano.Aconfig.parsed_flag; import android.aconfig.nano.Aconfig.parsed_flags; @@ -41,6 +40,7 @@ import org.xmlpull.v1.XmlPullParserException; import java.io.File; import java.io.FileInputStream; import java.io.IOException; +import java.util.List; import java.util.Map; /** @@ -54,20 +54,20 @@ import java.util.Map; public class AconfigFlags { private static final String LOG_TAG = "AconfigFlags"; - public enum Permission { - READ_WRITE, - READ_ONLY - } + private static final List<String> sTextProtoFilesOnDevice = List.of( + "/system/etc/aconfig_flags.pb", + "/system_ext/etc/aconfig_flags.pb", + "/product/etc/aconfig_flags.pb", + "/vendor/etc/aconfig_flags.pb"); private final ArrayMap<String, Boolean> mFlagValues = new ArrayMap<>(); - private final ArrayMap<String, Permission> mFlagPermissions = new ArrayMap<>(); public AconfigFlags() { if (!Flags.manifestFlagging()) { Slog.v(LOG_TAG, "Feature disabled, skipped all loading"); return; } - for (String fileName : DevicePaths.parsedFlagsProtoPaths()) { + for (String fileName : sTextProtoFilesOnDevice) { try (var inputStream = new FileInputStream(fileName)) { loadAconfigDefaultValues(inputStream.readAllBytes()); } catch (IOException e) { @@ -184,12 +184,6 @@ public class AconfigFlags { Slog.v(LOG_TAG, "Read Aconfig default flag value " + flagPackageAndName + " = " + flagValue); mFlagValues.put(flagPackageAndName, flagValue); - - Permission permission = flag.permission == Aconfig.READ_ONLY - ? Permission.READ_ONLY - : Permission.READ_WRITE; - - mFlagPermissions.put(flagPackageAndName, permission); } } @@ -206,17 +200,6 @@ public class AconfigFlags { } /** - * Get the flag permission, or null if the flag doesn't exist. - * @param flagPackageAndName Full flag name formatted as 'package.flag' - * @return the current permission of the given Aconfig flag, or null if there is no such flag - */ - @Nullable - public Permission getFlagPermission(@NonNull String flagPackageAndName) { - Permission permission = mFlagPermissions.get(flagPackageAndName); - return permission; - } - - /** * Check if the element in {@code parser} should be skipped because of the feature flag. * @param parser XML parser object currently parsing an element * @return true if the element is disabled because of its feature flag diff --git a/packages/SettingsProvider/src/com/android/providers/settings/DeviceConfigService.java b/packages/SettingsProvider/src/com/android/providers/settings/DeviceConfigService.java index 8b0772bb644d..2227943c0cc0 100644 --- a/packages/SettingsProvider/src/com/android/providers/settings/DeviceConfigService.java +++ b/packages/SettingsProvider/src/com/android/providers/settings/DeviceConfigService.java @@ -42,7 +42,6 @@ import android.provider.Settings.Config.SyncDisabledMode; import android.provider.UpdatableDeviceConfigServiceReadiness; import android.util.Slog; -import com.android.internal.pm.pkg.component.AconfigFlags; import com.android.internal.util.FastPrintWriter; import java.io.File; @@ -417,13 +416,7 @@ public final class DeviceConfigService extends Binder { DeviceConfig.setProperty(namespace, key, value, makeDefault); break; case OVERRIDE: - AconfigFlags.Permission permission = - (new AconfigFlags()).getFlagPermission(key); - if (permission == AconfigFlags.Permission.READ_ONLY) { - pout.println("cannot override read-only flag " + key); - } else { - DeviceConfig.setLocalOverride(namespace, key, value); - } + DeviceConfig.setLocalOverride(namespace, key, value); break; case CLEAR_OVERRIDE: DeviceConfig.clearLocalOverride(namespace, key); |