HarmonyOS 鸿蒙Next下如何在不set屏幕亮度的情况下直接拿到屏幕亮度的具体值,而不是-1

发布于 1周前 作者 sinazl 最后一次编辑是 5天前 来自 鸿蒙OS

HarmonyOS 鸿蒙Next下如何在不set屏幕亮度的情况下直接拿到屏幕亮度的具体值,而不是-1

当没有set屏幕亮度值时,通过properties.brightness拿到的屏幕亮度是-1,代表跟随系统,但是我想拿到0-255中间的那个具体值

window.getLastWindow(getContext(this)).then((background) => {
let properties = background.getWindowProperties();
this.fullScreenBrightPer = properties.brightness;
console.info('xingxing WBVideoPageFullScreen fullScreenBrightPer: ’ + this.fullScreenBrightPer);
}) 

打印出来的是-1 而不是0-255中间的实际值

1 回复

在HarmonyOS鸿蒙Next系统中,要获取屏幕亮度的具体值而非-1,可通过SystemSetting类的getScreenBrightness()方法来实现。此方法返回一个整数类型的值,代表屏幕亮度的百分比,范围一般是0到255,其中0代表最暗,255代表最亮。若返回值为-1,则意味着屏幕亮度设置为自动调整。

需要注意的是,并非所有设备或API版本都支持直接通过代码获取屏幕亮度值,且考虑到隐私和权限问题,访问系统级设置可能需要特定的权限,请确保应用已声明所需权限。

如果在尝试上述方法后仍无法获取屏幕亮度的具体值,可能是由于设备或API版本的限制。此时,建议检查设备的兼容性以及API版本是否支持该功能。

如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html

回到顶部