Android 获取设备的亮度百分比

一般的屏幕亮度都是0-255,而小米手机的高版本不一样

为了使亮度调节更加细腻, MIUI对原生亮度级别进行了扩展, 由原有的255级调整根据不同屏幕分别支持255/1023/2047/4095级。开发者在进行亮度调整时需要先去确认机型亮度的最大值和最小值,然后进行比例调整。

计算屏幕亮度

fun getLightnessStatusInfo(context:Context): String {
	val contentResolver = context.applicationContext.contentResolver
	val brightness = Settings.System.getInt(contentResolver, Settings.System.SCREEN_BRIGHTNESS)
	val maxBrightness = context.resources.run {
		val id = getIdentifier("config_screenBrightnessSettingMaximum", "integer", "android")
		val result = getInteger(id)
		//可能会找不到,则默认为255
		if (result == 0) {
			255
		} else {
			result
		}
	}
	return "亮度: " + ((brightness.toDouble() / maxBrightness) * 100).toInt() +"%"
}

参考

posted @ 2024-03-11 14:25  Stars-one  阅读(194)  评论(0编辑  收藏  举报