【问题标题】:how can I detect change in brightness in android?如何检测android中的亮度变化?
【发布时间】:2021-05-02 09:29:01
【问题描述】:

我正在尝试开发一个简单的应用程序,可以监控当前屏幕亮度的值并在用户更改亮度时更新该值。

这是我获取当前亮度的代码。

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();
}

但我正在努力更新价值。 亮度发生变化时如何更新值?

【问题讨论】:

    标签: android brightness


    【解决方案1】:

    这可以帮助你:

    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);
    

    附加回调以在内容更改时接收更改

    【讨论】:

      猜你喜欢
      • 2011-08-08
      • 1970-01-01
      • 2019-10-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-06-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多