Update code to match FeatureFlagUtils interface change.
Bug: 36222960 Test: rerun robotests Change-Id: Iecaaf2dfa1ec0a7f6754e74b723d619e16ec93bf
This commit is contained in:
@@ -35,7 +35,7 @@ public class FeatureFlagPreference extends SwitchPreference {
|
|||||||
@Override
|
@Override
|
||||||
public void setChecked(boolean isChecked) {
|
public void setChecked(boolean isChecked) {
|
||||||
setCheckedInternal(isChecked);
|
setCheckedInternal(isChecked);
|
||||||
FeatureFlagUtils.setEnabled(mKey, isChecked);
|
FeatureFlagUtils.setEnabled(getContext(), mKey, isChecked);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void setCheckedInternal(boolean isChecked) {
|
private void setCheckedInternal(boolean isChecked) {
|
||||||
|
@@ -18,6 +18,7 @@ package android.util;
|
|||||||
|
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.os.SystemProperties;
|
import android.os.SystemProperties;
|
||||||
|
import android.provider.Settings;
|
||||||
import android.text.TextUtils;
|
import android.text.TextUtils;
|
||||||
|
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
@@ -37,13 +38,24 @@ public class FeatureFlagUtils {
|
|||||||
* @return true if the flag is enabled (either by default in system, or override by user)
|
* @return true if the flag is enabled (either by default in system, or override by user)
|
||||||
*/
|
*/
|
||||||
public static boolean isEnabled(Context context, String feature) {
|
public static boolean isEnabled(Context context, String feature) {
|
||||||
// Tries to get feature flag from system property.
|
// Override precedence:
|
||||||
// Step 1: check if feature flag has any override. Flag name: sys.fflag.override.<feature>
|
// Settings.Global -> sys.fflag.override.* -> sys.fflag.*
|
||||||
String value = SystemProperties.get(FFLAG_OVERRIDE_PREFIX + feature);
|
|
||||||
|
// Step 1: check if feature flag is set in Settings.Global.
|
||||||
|
String value;
|
||||||
|
if (context != null) {
|
||||||
|
value = Settings.Global.getString(context.getContentResolver(), feature);
|
||||||
if (!TextUtils.isEmpty(value)) {
|
if (!TextUtils.isEmpty(value)) {
|
||||||
return Boolean.parseBoolean(value);
|
return Boolean.parseBoolean(value);
|
||||||
}
|
}
|
||||||
// Step 2: check if feature flag has any default value. Flag name: sys.fflag.<feature>
|
}
|
||||||
|
|
||||||
|
// Step 2: check if feature flag has any override. Flag name: sys.fflag.override.<feature>
|
||||||
|
value = SystemProperties.get(FFLAG_OVERRIDE_PREFIX + feature);
|
||||||
|
if (!TextUtils.isEmpty(value)) {
|
||||||
|
return Boolean.parseBoolean(value);
|
||||||
|
}
|
||||||
|
// Step 3: check if feature flag has any default value. Flag name: sys.fflag.<feature>
|
||||||
value = SystemProperties.get(FFLAG_PREFIX + feature);
|
value = SystemProperties.get(FFLAG_PREFIX + feature);
|
||||||
return Boolean.parseBoolean(value);
|
return Boolean.parseBoolean(value);
|
||||||
}
|
}
|
||||||
@@ -51,7 +63,7 @@ public class FeatureFlagUtils {
|
|||||||
/**
|
/**
|
||||||
* Override feature flag to new state.
|
* Override feature flag to new state.
|
||||||
*/
|
*/
|
||||||
public static void setEnabled(String feature, boolean enabled) {
|
public static void setEnabled(Context context, String feature, boolean enabled) {
|
||||||
SystemProperties.set(FFLAG_OVERRIDE_PREFIX + feature, enabled ? "true" : "false");
|
SystemProperties.set(FFLAG_OVERRIDE_PREFIX + feature, enabled ? "true" : "false");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user