Несмотря на незначительные изменения, попробуйте поставить в конце букву «F» следующим образом:
params.screenBrightness = 0F;
getWindow().setAttributes(params);
Если это не поможет устранить проблему, возможно, обновление экрана может сработать, вернувэкран с настройками по умолчанию.Я провел небольшое исследование и нашел этот код, который может работать при обновлении экрана:
this.getWindow().clearFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN, WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN);
Кроме того, вы можете попробовать включить телефон с помощью wakelock powermanager:
PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
// Wakes the screen on.
PowerManager.WakeLock wl = pm.newWakeLock(PowerManager.ACQUIRE_CAUSES_WAKEUP, AudioControlExtender.this.getClass().getName());
wl.acquire();
Иесли это не сработает, включите экран так, как вы это делаете сейчас, и сделайте следующее:
PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
// Sets the screen on maximum brightness.
// This might fix the problem you are having with the screen brightness since
// the screen settings are changed.
PowerManager.WakeLock wl = pm.newWakeLock(PowerManager.SCREEN_BRIGHT_WAKE_LOCK, AudioControlExtender.this.getClass().getName());
wl.acquire();