public static boolean getAutomaticAvailable(Context context){
return context.getResources().getBoolean(
com.android.internal.R.bool.config_automatic_brightness_available);
}
/**
* 获得当前系统的亮度模式
* SCREEN_BRIGHTNESS_MODE_MANUAL=0 为手动调节屏幕亮度
* SCREEN_BRIGHTNESS_MODE_AUTOMATIC=1 为自动调节屏幕亮度
*/
public static int getBrightnessMode(Context context) {
int brightnessMode = Settings.System.SCREEN_BRIGHTNESS_MODE_MANUAL;
try {
brightnessMode = Settings.System.getInt(context.getContentResolver(),
Settings.System.SCREEN_BRIGHTNESS_MODE);
} catch (Exception e) {
Log.e(TAG, "获得当前屏幕的亮度模式失败:", e);
}
return brightnessMode;
}
/**
* 设置当前系统的亮度模式
* SCREEN_BRIGHTNESS_MODE_AUTOMATIC=1 为自动调节屏幕亮度
* SCREEN_BRIGHTNESS_MODE_MANUAL=0 为手动调节屏幕亮度
*/
public static void setBrightnessMode(Context context, int brightnessMode) {
try {
Settings.System.putInt(context.getContentResolver(), Settings.System.SCREEN_BRIGHTNESS_MODE, brightnessMode);
} catch (Exception e) {
Log.e(TAG, "设置当前屏幕的亮度模式失败:", e);
}
}
自动亮度
//亮度初始化
mBrightnessMode = BrightUtils.getBrightnessMode(mContext);
if (BrightUtils.getAutomaticAvailable(mContext)) {
mIb_light.setBackgroundResource(mBrightnessMode == Settings.System.SCREEN_BRIGHTNESS_MODE_MANUAL ? R.drawable.ic_qs_brightness_auto_off : R.drawable.ic_qs_brightness_auto_on);
}
点击事假
case R.id.ib_light:
if (mBrightnessMode == Settings.System.SCREEN_BRIGHTNESS_MODE_MANUAL) {