diff --git a/res/values/strings.xml b/res/values/strings.xml
index 53b560af75e..77304b519f0 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -5032,10 +5032,14 @@
Screen
+
+ CPU
Flashlight
Camera
+
+ GPS
Wi\u2011Fi
diff --git a/src/com/android/settings/fuelgauge/batteryusage/BatteryEntry.java b/src/com/android/settings/fuelgauge/batteryusage/BatteryEntry.java
index acf62c264c5..69b57ca5f35 100644
--- a/src/com/android/settings/fuelgauge/batteryusage/BatteryEntry.java
+++ b/src/com/android/settings/fuelgauge/batteryusage/BatteryEntry.java
@@ -558,38 +558,47 @@ public class BatteryEntry {
String name;
int iconId;
switch (powerComponentId) {
- case BatteryConsumer.POWER_COMPONENT_AMBIENT_DISPLAY:
- name = context.getResources().getString(R.string.ambient_display_screen_title);
- iconId = R.drawable.ic_settings_aod;
- break;
- case BatteryConsumer.POWER_COMPONENT_BLUETOOTH:
- name = context.getResources().getString(R.string.power_bluetooth);
- iconId = R.drawable.ic_settings_bluetooth;
- break;
- case BatteryConsumer.POWER_COMPONENT_CAMERA:
- name = context.getResources().getString(R.string.power_camera);
- iconId = R.drawable.ic_settings_camera;
- break;
- case BatteryConsumer.POWER_COMPONENT_MOBILE_RADIO:
- name = context.getResources().getString(R.string.power_cell);
- iconId = R.drawable.ic_cellular_1_bar;
- break;
- case BatteryConsumer.POWER_COMPONENT_FLASHLIGHT:
- name = context.getResources().getString(R.string.power_flashlight);
- iconId = R.drawable.ic_settings_display;
- break;
- case BatteryConsumer.POWER_COMPONENT_PHONE:
- name = context.getResources().getString(R.string.power_phone);
- iconId = R.drawable.ic_settings_voice_calls;
- break;
- case BatteryConsumer.POWER_COMPONENT_SCREEN:
+ // Please see go/battery-usage-system-component-map
+ case BatteryConsumer.POWER_COMPONENT_SCREEN: // id: 0
name = context.getResources().getString(R.string.power_screen);
iconId = R.drawable.ic_settings_display;
break;
- case BatteryConsumer.POWER_COMPONENT_WIFI:
+ case BatteryConsumer.POWER_COMPONENT_CPU: // id: 1
+ name = context.getResources().getString(R.string.power_cpu);
+ iconId = R.drawable.ic_power_system;
+ break;
+ case BatteryConsumer.POWER_COMPONENT_BLUETOOTH: // id: 2
+ name = context.getResources().getString(R.string.power_bluetooth);
+ iconId = R.drawable.ic_settings_bluetooth;
+ break;
+ case BatteryConsumer.POWER_COMPONENT_CAMERA: // id: 3
+ name = context.getResources().getString(R.string.power_camera);
+ iconId = R.drawable.ic_settings_camera;
+ break;
+ case BatteryConsumer.POWER_COMPONENT_FLASHLIGHT: // id: 6
+ name = context.getResources().getString(R.string.power_flashlight);
+ iconId = R.drawable.ic_settings_display;
+ break;
+ case BatteryConsumer.POWER_COMPONENT_MOBILE_RADIO: // id: 8
+ name = context.getResources().getString(R.string.power_cell);
+ iconId = R.drawable.ic_cellular_1_bar;
+ break;
+ case BatteryConsumer.POWER_COMPONENT_GNSS: // id: 10
+ name = context.getResources().getString(R.string.power_gps);
+ iconId = R.drawable.ic_power_system;
+ break;
+ case BatteryConsumer.POWER_COMPONENT_WIFI: // id: 11
name = context.getResources().getString(R.string.power_wifi);
iconId = R.drawable.ic_settings_wireless_no_theme;
break;
+ case BatteryConsumer.POWER_COMPONENT_PHONE: // id: 14
+ name = context.getResources().getString(R.string.power_phone);
+ iconId = R.drawable.ic_settings_voice_calls;
+ break;
+ case BatteryConsumer.POWER_COMPONENT_AMBIENT_DISPLAY: // id :15
+ name = context.getResources().getString(R.string.ambient_display_screen_title);
+ iconId = R.drawable.ic_settings_aod;
+ break;
default:
Log.w(TAG, "unknown attribute:" + DebugUtils.constantToString(
BatteryConsumer.class, "POWER_COMPONENT_", powerComponentId));
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/BatteryEntryTest.java b/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/BatteryEntryTest.java
index 07a8dfefb9f..6a5ae347bbe 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/BatteryEntryTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/BatteryEntryTest.java
@@ -317,30 +317,36 @@ public class BatteryEntryTest {
@Test
public void getNameAndIconFromPowerComponent_rerturnExpectedNameAndIcon() {
- assertNameAndIcon(BatteryConsumer.POWER_COMPONENT_AMBIENT_DISPLAY,
- R.string.ambient_display_screen_title,
- R.drawable.ic_settings_aod);
+ assertNameAndIcon(BatteryConsumer.POWER_COMPONENT_SCREEN,
+ R.string.power_screen,
+ R.drawable.ic_settings_display);
+ assertNameAndIcon(BatteryConsumer.POWER_COMPONENT_CPU,
+ R.string.power_cpu,
+ R.drawable.ic_power_system);
assertNameAndIcon(BatteryConsumer.POWER_COMPONENT_BLUETOOTH,
R.string.power_bluetooth,
R.drawable.ic_settings_bluetooth);
assertNameAndIcon(BatteryConsumer.POWER_COMPONENT_CAMERA,
R.string.power_camera,
R.drawable.ic_settings_camera);
- assertNameAndIcon(BatteryConsumer.POWER_COMPONENT_MOBILE_RADIO,
- R.string.power_cell,
- R.drawable.ic_cellular_1_bar);
assertNameAndIcon(BatteryConsumer.POWER_COMPONENT_FLASHLIGHT,
R.string.power_flashlight,
R.drawable.ic_settings_display);
- assertNameAndIcon(BatteryConsumer.POWER_COMPONENT_PHONE,
- R.string.power_phone,
- R.drawable.ic_settings_voice_calls);
- assertNameAndIcon(BatteryConsumer.POWER_COMPONENT_SCREEN,
- R.string.power_screen,
- R.drawable.ic_settings_display);
+ assertNameAndIcon(BatteryConsumer.POWER_COMPONENT_MOBILE_RADIO,
+ R.string.power_cell,
+ R.drawable.ic_cellular_1_bar);
+ assertNameAndIcon(BatteryConsumer.POWER_COMPONENT_GNSS,
+ R.string.power_gps,
+ R.drawable.ic_power_system);
assertNameAndIcon(BatteryConsumer.POWER_COMPONENT_WIFI,
R.string.power_wifi,
R.drawable.ic_settings_wireless_no_theme);
+ assertNameAndIcon(BatteryConsumer.POWER_COMPONENT_PHONE,
+ R.string.power_phone,
+ R.drawable.ic_settings_voice_calls);
+ assertNameAndIcon(BatteryConsumer.POWER_COMPONENT_AMBIENT_DISPLAY,
+ R.string.ambient_display_screen_title,
+ R.drawable.ic_settings_aod);
}
private void assertNameAndIcon(String name, int stringId) {