如何解决如何检测android中亮度的变化?
我正在尝试开发一个简单的应用程序,它可以监控当前屏幕亮度的值并在用户更改亮度时更新该值。
这是我获取当前亮度的代码。
try {
float curBrightnessValue=android.provider.Settings.System.getInt(
getContentResolver(),android.provider.Settings.System.SCREEN_BRIGHTNESS);
System.out.println(curBrightnessValue);
} catch (Settings.SettingNotFoundException e) {
e.printStackTrace();
}
但我正在努力更新价值。 当亮度发生变化时,如何更新该值?
解决方法
这可以帮助您:
ContentObserver contentObserver = new ContentObserver(new Handler()) {
@Override
public void onChange(boolean selfChange) {
int a = Settings.System.getInt(getContentResolver(),Settings.System.SCREEN_BRIGHTNESS,0);
Log.d("MainActivity","Brightness value: "+ a);
}
};
getContentResolver().registerContentObserver(Settings.System.getUriFor(Settings.System.SCREEN_BRIGHTNESS),false,contentObserver);
附加回调以在内容更改时接收更改
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。