Skip to content

ABattery - Battery Health and Cycles

ABattery - Battery Health & Cycles

A privacy-friendly, open-source Android app for understanding battery health, charging behavior, capacity, and cycle count.

Android CI Google Play Latest release GitHub stars Apache 2.0 license Android 8.0+

Get it on Google Play  ·  Report a bug  ·  Request a feature  ·  How Android battery data works

If ABattery is useful on your device, star the repository to help more Android users discover it.

Why ABattery?

Android exposes useful battery data across several APIs and device-specific system files. ABattery brings the available signals into one readable Material 3 dashboard, while clearly marking values that are estimated or unavailable.

  • Real-time battery level, charge status, temperature, voltage, current, and power
  • Reported or best-effort cycle count with estimated values clearly marked
  • Design capacity and full-charge capacity when the device exposes them
  • Live current chart for charging and discharging behavior
  • Light, dark, and system themes
  • 16 languages
  • No ads, analytics, account, or Internet permission
  • No runtime permission prompts

Screenshots

Dark dashboard Light dashboard Battery capacity and health details Language picker

Device compatibility

Battery reporting varies significantly between Android versions and manufacturers. ABattery reads data from Android's battery APIs first, then uses available system information and local estimation as fallbacks.

Some devices hide capacity, cycle count, or charging limits. In those cases ABattery shows N/A instead of inventing a value. The app is a diagnostic tool, not a laboratory measurement or a replacement for manufacturer service tools.

Community reports currently confirm the app running on devices including the Google Pixel 7 with Android 17, Google Pixel 6a with GrapheneOS, and LG V40 with Android 10. See the community-tested device list for details.

If a field behaves differently on your device, please open a device compatibility report with the phone model and Android version.

Build from source

Requirements

  • Android Studio with Android SDK 36
  • JDK 17
  • Android 8.0 (API 26) or newer for the target device

Commands

git clone https://github.com/abanana84/abattery.git
cd abattery
./gradlew assembleDebug

The debug APK is generated at app/build/outputs/apk/debug/app-debug.apk.

Run the same checks used by CI:

./gradlew testDebugUnitTest lintDebug assembleDebug

Tech stack

  • Kotlin
  • Jetpack Compose and Material 3
  • Hilt dependency injection
  • Coroutines and StateFlow
  • Android BatteryManager and system battery signals

Privacy

ABattery processes battery information on your device. It does not include ads or analytics and does not request Internet access. See the full privacy policy.

Contributing

Bug reports, device compatibility findings, translations, documentation, and code contributions are welcome. Read CONTRIBUTING.md before opening a pull request.

If this project is useful to you, consider starring the repository. It helps other Android users and contributors discover the app.

License

Licensed under the Apache License 2.0.

Releases

Packages

Used by

Contributors

Languages