首页 > 解决方案 > 无法启动环境光传感器(Chrome、MacOS)

问题描述

一直在尝试用 ALS 进行试验,但到目前为止还不能让它发挥作用。我使用了以下代码段:

navigator.permissions.query({ name: 'ambient-light-sensor' }).then(result => {
    if (result.state === 'denied') {
        console.log('Permission to use ambient light sensor is denied.');
        return;
    }

    const als = new AmbientLightSensor({frequency: 10});
    als.addEventListener('activate', () => console.log('Ready to measure EV.'));
    als.addEventListener('error', event => console.log(`Error: ${event.error.name}`));
    als.addEventListener('reading', () => {
        // Defaut ISO value.
        const ISO = 100;
        // Incident-light calibration constant.
        const C = 250;

        let EV = Math.round(Math.log2((als.illuminance * ISO) / C));
        console.log(`Exposure Value (EV) is: ${EV}`);
    });

    als.start();
});

我得到的错误是:Error: NotReadableError。控制台中没有其他错误或警告。

Chrome 金丝雀 v97,MacOS 10.15.7

标签: javascriptgoogle-chromesensors

解决方案


推荐阅读