整个问题都在标题中,所以我想强调一下:
>我对当前值感兴趣(不在当前设置中)
>我对实际价值感兴趣(所以如果屏幕的亮度现在低于之前的一秒,那么值也应该更低)
可悲的是,尽管阅读了很多帖子,但我不知道答案.我写了一点实用工具,每一秒都显示时间和亮度.并且它不起作用 – 因为当手机(LG L5与Android 4.0)自动降低亮度(屏幕变暗,并且毫无疑问)时,值保持不变!
以下是相关的代码:
try
{
float sys_brightness = android.provider.Settings.System
.getFloat(getContentResolver(),
android.provider.Settings
.System.SCREEN_BRIGHTNESS);
WindowManager.LayoutParams lp = getWindow().getAttributes();
float dim = lp.dimAmount;
float scr_brightness = lp.screenBrightness;
boolean dim_changed = (lp.flags & WindowManager.LayoutParams
.DIM_AMOUNT_CHANGED)>0;
textView.setText(String.format("%02d:%02d:%02d", hours, minutes, seconds)+" "
+String.format("%02f, %02f, %02f", sys_brightness,dim,scr_brightness)
+" "+Boolean.toString(dim_changed));
}
catch (SettingNotFoundException ex)
{
textView.setText("excepton");
}
对于记录,值为 – 92,1.0,-1.0,false.每时每刻.
问题 – 如何读取当前,真实的亮度/暗淡值?
我将时钟添加到输出中以确保,我的读数正在滴答作响.他们是.