Как проверить, включена ли батарея для Android Lollipop
Android Lollipop представил режим экономии заряда батареи, который может быть включен в любое время, и включается по умолчанию, когда аккумулятор находится на 15% или ниже. Это создает проблему для моего приложения, поскольку заставка батареи отключает анимацию, которая предоставляет важную информацию. (Чтобы дать контекст, мое приложение позволяет пользователям настраивать лицо для просмотра Android Wear, а когда они сохраняют новую "тему", я оживляю тему, перемещая ее на кнопку на панели действий, чтобы они знали, где она была сохранена. анимации отключены с помощью хранителя батареи, ничего не происходит, когда они нажимают "Сохранить", что, я думаю, будет путать.)
Итак, есть ли способ программно определить, включена ли батарея? Таким образом, я могу предоставить альтернативу анимации (а), такой как отображение Toast.
Ответы
Ответ 1
Посмотрите менеджер мощности
У него есть метод 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();
}
Ответ 2
В Android lollipop Battery saver
есть свои методы, которые сообщают вам, что Battery saver
есть On
или Off
как isPowerSaveMode()
, который возвращает boolean
vlue.