4

I was wondering about the value that I get from the BatteryManager when I want to have the health. I get a "2". What does it mean? Can anyone give me all the values I can get and their meanings?

Here is my code for what I want:

int health = batteryIntent.getIntExtra(BatteryManager.EXTRA_HEALTH, 0);

Phil
  • 57
  • 8

1 Answers1

6

Take a look at the documentation on Battery Manager.

You'll be able to see what these constant values mean. For example, the value 2 that you get corresponds to BATTERY_HEALTH_GOOD. You can check that here: Link.

In your activity, you can check your integer variable health against these values like:

if (health == BatteryManager.BATTERY_HEALTH_GOOD) {
    // do something, update a textview, show a Toast
} else if (health == BatteryManager.BATTERY_HEALTH_OVERHEAT) {
    // do something else, show a warning
} else if. . . . // check for however many values or check for all

This way, you won't need to consider the actual value(numerical value) that health variable holds.

Vikram
  • 51,313
  • 11
  • 93
  • 122