How to check if Android Lollipop battery saver is on
Asked Answered
O

2

27

Android Lollipop introduced a battery saver mode that can be turned on at any time, and turns on by default when the battery is at 15% or lower. This poses a problem for my app, since the battery saver disables animations that provide crucial information. (Just to give context, my app allows users to configure an Android Wear watch face; when they save a new "theme," I animate the theme moving to a button on the action bar so that they know where it was saved to. When animations are disabled by the battery saver, nothing happens when they hit save, which I think would be confusing.)

So, is there a way to programmatically determine whether the battery saver is on? That way I can provide an alternative to the animation(s) such as displaying a Toast.

Odor answered 8/8, 2015 at 17:46 Comment(0)
Z
44

Take a look at power manager

It has a method isPowerSaveMode() that will tell you if battery saver is on

Example code:

PowerManager powerManager = (PowerManager)
    getActivity().getSystemService(Context.POWER_SERVICE);
if (android.os.Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP
        && powerManager.isPowerSaveMode()) {
    // Animations are disabled in power save mode, so just show a toast instead.
    Toast.makeText(mContext, getString(R.string.toast), Toast.LENGTH_SHORT).show();
}
Zaxis answered 8/8, 2015 at 17:51 Comment(0)
R
-1

In Android lollipop Battery saver has their own methods which tells you either Battery saver is On or Off like isPowerSaveMode() which returns a boolean vlue.

Raddatz answered 8/8, 2015 at 19:27 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.