2015-09-21 97 views
1

我使用此代碼來降低屏幕亮度,但它只適用於Android 4.4--。當我在android 5 ++中測試時,當它完成/關閉Activity後,它會在Activity打開時工作,然後屏幕亮度將返回默認設置。如何在Android 5.0 ++中保持屏幕亮度設置無法保持屏幕亮度設置在android 5.0 ++

cResolver = getContentResolver(); 
    window = getWindow(); 
    android.provider.Settings.System.putInt(cResolver, 
      android.provider.Settings.System.SCREEN_BRIGHTNESS,75); 
    WindowManager.LayoutParams layoutpars = window.getAttributes(); 
    layoutpars.screenBrightness = 75/(float) 255; 
    window.setAttributes(layoutpars); 

回答

0

設備上是否啓用了自適應亮度?這將意味着亮度級別落在用戶定義的範圍內,而不是使用您提供的單個值。在運行您發佈的代碼之前嘗試禁用它,並查看它是否有所作爲。

Settings.System.putInt(getContentResolver(), SCREEN_BRIGHTNESS_MODE, SCREEN_BRIGHTNESS_MODE_MANUAL) 

此外,請參閱this question以獲取在啓用自適應模式時更改值的幫助。