首页 > 解决方案 > 在 Android 上的 Chrome 上启动后置摄像头的问题(面向模式:环境)

问题描述

我有一个小网络应用程序,可以在 Safari 上的 iOS 上很好地运行。它扫描二维码并进行音频同步。

但是,如果我尝试在三星 S7 手机的 Chrome 上加载后置摄像头,则会出现以下错误:

DOMException: 无法启动视频源

这是我的代码片段:

const constraints = {

    video: {facingMode: {exact: "environment"},
};

    navigator.mediaDevices.getUserMedia(constraints).then(stream => {
        debug( "Got userMedia");
        state.stream = stream;

        if ("srcObject" in components.video) {
            components.video.srcObject = stream;
        } else {
            // Avoid using this in new browsers
            components.video.src = window.URL.createObjectURL(stream);
        }

        //components.video.srcObject = state.stream;
        components.video.play();

    }, function (err) {
        console.error(err);
        debug( "Error - " + err.message);
    });

我根本找不到解决方案。在较新的设备上似乎很好,甚至可以在新的 iPhone 12 上的 Chrome 上运行。但这似乎是旧设备上的一个常见问题。

有什么解决办法吗?

标签: javascriptgoogle-chromecameraandroid-cameragetusermedia

解决方案


推荐阅读