uni-app 安卓APP设置屏幕亮度以后 无法再通过手机调节亮度

uni-app 安卓APP设置屏幕亮度以后 无法再通过手机调节亮度

开发环境 版本号 项目创建方式
Windows windows 10 HBuilderX

产品分类:uniapp/App

PC开发环境操作系统:Windows

HBuilderX类型:正式

HBuilderX版本号:3.1.22

手机系统:Android

手机系统版本号:Android 9.0

手机厂商:华为

手机机型:CDY-AN00

页面类型:vue

打包方式:云端

操作步骤:

  • 安卓都有这样的问题出现

预期结果:

  • 设置了亮度,可以随系统亮度改变;

实际结果:

  • 安卓APP设置屏幕亮度以后,无法再通过手机调节亮度;

bug描述:

let that = this;  
that.brightness = plus.screen.getBrightness();  
uni.setScreenBrightness({  
    value: 0.8,  
    success: function () {  
        console.log('success');  
    }  
});

更多关于uni-app 安卓APP设置屏幕亮度以后 无法再通过手机调节亮度的实战教程也可以访问 https://www.itying.com/category-93-b0.html

2 回复

Android 平台设置亮度后不会跟随系统亮度调整而改变。如果你的需求是希望跟随系统变话可能需要其他API设置还原屏幕亮度跟随系统才行,目前不支持

更多关于uni-app 安卓APP设置屏幕亮度以后 无法再通过手机调节亮度的实战教程也可以访问 https://www.itying.com/category-93-b0.html


这是一个常见的uni-app在Android平台上设置屏幕亮度后无法恢复系统控制的问题。原因在于调用uni.setScreenBrightness后,APP会接管亮度控制权,导致系统亮度调节失效。

解决方案:

  1. 在需要恢复系统控制时调用:
uni.setScreenBrightness({
    value: -1 // 设置为-1可恢复系统控制
});
  1. 或者使用plus API:
plus.screen.setBrightness(-1);
  1. 更完整的处理方式:
// 保存当前亮度
let currentBrightness = plus.screen.getBrightness();

// 设置自定义亮度
uni.setScreenBrightness({
    value: 0.8
});

// 恢复系统控制时
function restoreBrightnessControl() {
    uni.setScreenBrightness({
        value: -1
    });
    // 或者恢复到之前保存的亮度
    // uni.setScreenBrightness({
    //     value: currentBrightness
    // });
}
回到顶部