Как обнаружить изменение PowerSaveMode в Android

Я пытаюсь обнаружить изменение PowerSaveMode для батареи. Я использую метод pm.isPowerSaveMode(). Проблема в том, что у меня всегда ложный результат. Я пытаюсь обновить статус, чтобы включить, но всегда результат ложный. Я использую три разных устройства: S8+ (Android 9), One plus (Android 10), Sony (Android 10)...

Любое решение, пожалуйста?


person Younes Ben Tlili    schedule 19.11.2019    source источник
comment
Пробовали ли вы использовать ACTION_POWER_SAVE_MODE_CHANGED   -  person Saurabh Thorat    schedule 19.11.2019
comment
Это действие, которое нам нужно использовать для обнаружения изменения устава.   -  person Younes Ben Tlili    schedule 19.11.2019
comment
Отвечает ли это на ваш вопрос? Получить уровень заряда батареи и состояние в Android   -  person Andreas detests censorship    schedule 24.07.2020


Ответы (1)


Это отлично работает в OnePlus (Android 10) и эмуляторе (Android 10).

 PowerManager powerManager = (PowerManager) getSystemService(Context.POWER_SERVICE);
 boolean powerSaveMode = powerManager.isPowerSaveMode();
 Log.e("Power Saver", "Mode is " + powerSaveMode);
person Nensi Kasundra    schedule 19.11.2019