With BetterBatteryStats you can analyse the behavior of your phone, find applications causing the phone to drain battery while it is supposed to be asleep and measure the effect of corrective actions:
– Spot drainers based on detailed information about the root cause
– measure the effect of actions to reduce drain, following a simple method
– detect changes in the awake/sleep profile and quickly find the causes (rogue apps)
In other words BetterBatteryStats helps you gettings the best experience with your smartphone.
BetterBatteryStats supports unrooted devices but there are a few manual steps for you to complete (on rooted devices there steps will be completed by the app).
Please run following commands from your computer where ADB was installed:
adb -d shell pm grant com.asksven.betterbatterystats android.permission.BATTERY_STATS
adb -d shell pm grant com.asksven.betterbatterystats android.permission.DUMP
On Lolipop and forward additionally run:
adb -d shell pm grant com.asksven.betterbatterystats android.permission.PACKAGE_USAGE_STATS
Please check the website for more info.
Please don’t use the rating system for support. In case of issues or for any question or suggestion please contact me by e-mail or use the contact information from the about box.
If you experience problems with your superuser app keeping asking to grant su rights don’t blame BetterBatterStats but try another superuser app instead.
– android.permission.WRITE_EXTERNAL_STORAGE is used only for writing dumps to the SD. In case you don’t need that feature please feel free to revoke that permission. It won’t have any side effect besides disabling that feature
– android.permission.BATTERY_STATS is obviously the permission to access the internal statistics and can not be revoked without making the app unusable (from Kitkat on BBS will have to be installed as a system app to access this permission)
– android.permission.DUMP from Kitkat on BBS can be installed as a system app to access this permission. It is required to access dumpsys without root for a better performance
– android.permission.ACCESS_WIFI_STATE is required since Android Marshmallow in order to access stats. In pre-6.0 version this permission can be revoked
– android.permission.ACCESS_NETWORK_STATE This permission can be revoked
– android.permission.RECEIVE_BOOT_COMPLETED is required for cleaning references. Revoking this permission may affect the results of kernel wakelocks and custom reference until new references were saved
– android.permission.READ_PHONE_STATE is required to detect when the phone was turned on/off in order to store references for advanced diagnosis
– android.permission.DEVICE_POWER is required to detect when the phone is disconnected from the charger and store the corresponding kernel wakelock reference. Revoking this permission will lead to losing “since unplugged”
– android.permission.BLUETOOTH is required to fix a bug where the communication to the batteryinfo service stops working
– android.permission.READ_LOGS is required to allow logcat dumps to be saved. You can revoke this right and will lose only the ability to save logcats
– android.permission.GET_TASKS is required to read the list of running tasks (ps)
– android.permission.WAKE_LOCK is required to hold a wakelock in order to save references when the screen goes off
BetterBatteryStats is open source so you can inspect/review/contribute and submit issues or feature requests. Please check the about dialog for further details.