diff --git a/res/values/bools.xml b/res/values/bools.xml
index 617ab7bbf07..0cf085f9cff 100644
--- a/res/values/bools.xml
+++ b/res/values/bools.xml
@@ -57,6 +57,12 @@
true
+
+ true
+
+
+ true
+
true
diff --git a/src/com/android/settings/applications/appinfo/AppBatteryPreferenceController.java b/src/com/android/settings/applications/appinfo/AppBatteryPreferenceController.java
index ffe2bf313f9..afcf76094ce 100644
--- a/src/com/android/settings/applications/appinfo/AppBatteryPreferenceController.java
+++ b/src/com/android/settings/applications/appinfo/AppBatteryPreferenceController.java
@@ -76,7 +76,9 @@ public class AppBatteryPreferenceController extends BasePreferenceController
@Override
public int getAvailabilityStatus() {
- return AVAILABLE;
+ return mContext.getResources().getBoolean(R.bool.config_show_app_info_settings_battery)
+ ? AVAILABLE
+ : DISABLED_UNSUPPORTED;
}
@Override
diff --git a/src/com/android/settings/applications/appinfo/AppMemoryPreferenceController.java b/src/com/android/settings/applications/appinfo/AppMemoryPreferenceController.java
index 7b497a9c8e8..265754cad8d 100644
--- a/src/com/android/settings/applications/appinfo/AppMemoryPreferenceController.java
+++ b/src/com/android/settings/applications/appinfo/AppMemoryPreferenceController.java
@@ -104,6 +104,10 @@ public class AppMemoryPreferenceController extends BasePreferenceController
@Override
public int getAvailabilityStatus() {
+ if (!mContext.getResources().getBoolean(R.bool.config_show_app_info_settings_memory)) {
+ return DISABLED_UNSUPPORTED;
+ }
+
return DevelopmentSettingsEnabler.isDevelopmentSettingsEnabled(mContext)
? AVAILABLE : DISABLED_DEPENDENT_SETTING;
}
diff --git a/tests/robotests/res/values-mcc999/config.xml b/tests/robotests/res/values-mcc999/config.xml
index 137a08933f5..f43e39c74e8 100644
--- a/tests/robotests/res/values-mcc999/config.xml
+++ b/tests/robotests/res/values-mcc999/config.xml
@@ -23,6 +23,8 @@
true
false
false
+ false
+ false
false
false
false
diff --git a/tests/robotests/src/com/android/settings/applications/appinfo/AppBatteryPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/applications/appinfo/AppBatteryPreferenceControllerTest.java
index 91833f562cf..970b2ec4658 100644
--- a/tests/robotests/src/com/android/settings/applications/appinfo/AppBatteryPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/applications/appinfo/AppBatteryPreferenceControllerTest.java
@@ -109,8 +109,14 @@ public class AppBatteryPreferenceControllerTest {
}
@Test
- public void getAvailabilityStatus_shouldAlwaysReturnAvailable() {
- assertThat(mController.getAvailabilityStatus()).isEqualTo(mController.AVAILABLE);
+ public void testAppBattery_byDefault_shouldBeShown() {
+ assertThat(mController.isAvailable()).isTrue();
+ }
+
+ @Test
+ @Config(qualifiers = "mcc999")
+ public void testAppBattery_ifDisabled_shouldNotBeShown() {
+ assertThat(mController.isAvailable()).isFalse();
}
@Test
diff --git a/tests/robotests/src/com/android/settings/applications/appinfo/AppMemoryPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/applications/appinfo/AppMemoryPreferenceControllerTest.java
index 47844c59b0a..fd136c1a6c3 100644
--- a/tests/robotests/src/com/android/settings/applications/appinfo/AppMemoryPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/applications/appinfo/AppMemoryPreferenceControllerTest.java
@@ -83,6 +83,24 @@ public class AppMemoryPreferenceControllerTest {
assertThat(mController.getAvailabilityStatus()).isEqualTo(mController.AVAILABLE);
}
+ @Test
+ @Config(qualifiers = "mcc999")
+ public void getAvailabilityStatus_devSettingsEnabled_butNotVisible_shouldReturnUnsupported() {
+ Settings.Global.putInt(mContext.getContentResolver(),
+ Settings.Global.DEVELOPMENT_SETTINGS_ENABLED, 1);
+
+ assertThat(mController.getAvailabilityStatus()).isEqualTo(mController.DISABLED_UNSUPPORTED);
+ }
+
+ @Test
+ @Config(qualifiers = "mcc999")
+ public void getAvailabilityStatus_devSettingsDisabled_butNotVisible_shouldReturnUnsupported() {
+ Settings.Global.putInt(mContext.getContentResolver(),
+ Settings.Global.DEVELOPMENT_SETTINGS_ENABLED, 0);
+
+ assertThat(mController.getAvailabilityStatus()).isEqualTo(mController.DISABLED_UNSUPPORTED);
+ }
+
@Test
public void getAvailabilityStatus_developmentSettingsDisabled_shouldReturnDisabled() {
Settings.Global.putInt(mContext.getContentResolver(),