Home > Java > javaTutorial > How to Get Battery Level and State in Android?

How to Get Battery Level and State in Android?

DDD
Release: 2024-10-29 18:40:41
Original
912 people have browsed it

How to Get Battery Level and State in Android?

Get Battery Level and State in Android

Question:

How can we obtain the battery level and status (e.g., plugged in, discharging, charging) in Android?

Answer:

The BatteryManager class provides information about the device's battery. Despite its lack of methods, it contains constant values representing battery-related data:

Getting Battery Level (SDK 21 ):

<code class="java">BatteryManager bm = (BatteryManager) context.getSystemService(BATTERY_SERVICE);
int batLevel = bm.getIntProperty(BatteryManager.BATTERY_PROPERTY_CAPACITY);</code>
Copy after login

Getting Battery State:

<code class="java">int batteryStatus = bm.getIntProperty(BatteryManager.BATTERY_STATUS);
switch ( BATTERY_STATUS ) {
    case BatteryManager.BATTERY_STATUS_UNKNOWN:
        // Unknown status
        break;
    case BatteryManager.BATTERY_STATUS_CHARGING:
        //  Plug in charger
         break;
    case BatteryManager.BATTERY_STATUS_DISCHARGING:
         // Discharging
         break;
    case  BatteryManager.BATTERY_STATUS_NOT_CHARGING:
         // Not plug in
         break;
    case BatteryManager.BATTERY_STATUS
        // Fully charged
        break;
    // ...
}</code>
Copy after login

Additional Notes:

  • The available battery information may vary depending on the Android version and device manufacturer.
  • For pre-Lollipop devices, use BatteryManager.BATTERY_PROPERTY_LEVEL instead of BatteryManager.BATTERY_PROPERTY_CAPACITY for battery level.
  • Refer to the Android Developers documentation for a comprehensive list of all available battery constants.

The above is the detailed content of How to Get Battery Level and State in Android?. For more information, please follow other related articles on the PHP Chinese website!

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template