画面の明るさをプログラムで変更する必要があります。このような複数のソリューションを読みました Android でシステム画面の明るさをプログラムで適用できません。
私の問題は、これらの解決策は、アクティビティを効果的に変更することを意味すること (ダミーのアクティビティのようなものをすぐに終了させること) であり、アクティビティ スイッチのオーバーヘッドを回避したいと考えています。
他の解決策はありますか...おそらくネイティブコードを使用して、画面の明るさがすぐに変わるようにしますか?
画面の明るさをプログラムで変更する必要があります。このような複数のソリューションを読みました Android でシステム画面の明るさをプログラムで適用できません。
私の問題は、これらの解決策は、アクティビティを効果的に変更することを意味すること (ダミーのアクティビティのようなものをすぐに終了させること) であり、アクティビティ スイッチのオーバーヘッドを回避したいと考えています。
他の解決策はありますか...おそらくネイティブコードを使用して、画面の明るさがすぐに変わるようにしますか?
以下は、単一のアクティビティにすぐに影響し、再起動する必要はありません。アクティビティは、一時停止/再開時に screenBrightness 属性も記憶します。
WindowManager.LayoutParams lp = getWindow().getAttributes();
lp.screenBrightness = 1; // 0f - no backlight ... 1f - full backlight
getWindow().setAttributes(lp);
ただし、システム設定で自動バックライト レベルを有効にしている場合は効果がありません。このソリューションは、自動バックライトをオフにするのに役立ちます。