Androidで画面の明るさを設定する2つの方法

2974 ワード

        Android     ,          ,         ,Android        。      :
Android       0~255,     int 。
           ,     WindowManager          ——  ,     ,       。        
private void setLight(Activity context, int brightness) {
        WindowManager.LayoutParams lp = context.getWindow().getAttributes();
        lp.screenBrightness = Float.valueOf(brightness) * (1f / 255f);
        context.getWindow().setAttributes(lp);
}

1
2
3
4
5
       context    Activity,   Context。
       , **           **,      ,                。
    ,               ,          。
       ,          。           ,        。

                    。    :
    public void saveBrightness(Activity activity, int brightness) {
        Uri uri = Settings.System.getUriFor(Settings.System.SCREEN_BRIGHTNESS);
        Settings.System.putInt(contentResolver, Settings.System.SCREEN_BRIGHTNESS, brightness);
        activity.getContentResolver().notifyChange(uri, null);
    }

1
2
3
4
5
                ,        ,          。                      。

      ,    ;     ,           。      ,               ,           。

                ,           ,    。    ,    ,      。