마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

SCREEN_BRIGHTNESS 관련하여 질문드립니다.

0 추천

밝기 설정하는 범위가 0~255 잖아요 

근데 255로 설정하면 100% 로 잘 설정되는데 

128로 적용하면 50% 가 되어야 할것같은데 48% 입니다. 

1% 로 적용하고 싶어서 2.55로 설정하면 .. 실제론 0% 가 되어 버리네요 

100:256=50:x

x=128 이잖아요... ㅠ 

뭘 잘못 했을까요.. ㅠㅠ 

 

private void setScreenBrightness(Activity mContext, int environmentScreenBrightness){
    Double environmentScreenBrightnessValue = environmentScreenBrightness*2.55;
    environmentScreenBrightness=(int)Math.ceil(environmentScreenBrightnessValue);

    Settings.System.putInt(mContext.getContentResolver(),Settings.System.SCREEN_BRIGHTNESS_MODE,
            Settings.System.SCREEN_BRIGHTNESS_MODE_MANUAL);
    Settings.System.putInt(mContext.getContentResolver(), android.provider.Settings.System.SCREEN_BRIGHTNESS, environmentScreenBrightness);//0~255

}

 

 

now882002 (3,860 포인트) 님이 2018년 6월 19일 질문

3개의 답변

0 추천
 
채택된 답변
1. 기기에 따라 인식하는 값이 다를 수 있습니다. 가능하면 넥서스나 픽셀 기기를 구해서 테스트해보세요.

2. 0 ~ 255 값을 차례로 넣어서 몇 %로 인식하는지 확인해보세요.
익명사용자 님이 2018년 6월 19일 답변
now882002님이 2018년 6월 21일 채택됨
0 추천
final float MAX = 256f;

float level = 50f;
if (level < 0f) {
    level = 0f;
}

if (level > 100f) {
    level = 100f;
}

float cvt = MAX * level / 100f;
aucd29 (218,390 포인트) 님이 2018년 6월 19일 답변
0 추천
Will Kim (43,170 포인트) 님이 2018년 6월 20일 답변
...