如何检查Android Lollipop电池保护程序是否已打开

Ton*_*ham 21 android battery-saver android-5.0-lollipop android-5.1.1-lollipop

Android Lollipop推出了一种可以随时打开的节电模式,默认情况下,当电池电量为15%或更低时,它会打开.这给我的应用程序带来了问题,因为省电模式会禁用提供重要信息的动画.(只是为了给出上下文,我的应用程序允许用户配置Android Wear表盘;当他们保存新的"主题"时,我将主题移动到动作栏上的按钮,以便他们知道保存到的位置.电池保护程序禁用动画,当他们点击保存时没有任何反应,我认为这会令人困惑.)

那么,有没有办法以编程方式确定电池保护程序是否打开?这样我可以提供动画的替代方案,例如显示Toast.

And*_*oke 35

看看电源管理器

它有一个方法isPowerSaveMode()可以告诉你电池保护程序是否打开

示例代码:

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();
}
Run Code Online (Sandbox Code Playgroud)