OGeek|极客世界-中国程序员成长平台

标题: javascript - Bowser for iOS getUserMedia 未定义 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-13 07:58
标题: javascript - Bowser for iOS getUserMedia 未定义

我正在尝试让 WebRTC 与 Bowser 一起工作iOS 浏览器。但无论我尝试 navigator.getUserMedia 都是未定义的。

我正在运行 iOS 8.3 的 iPhone6 上测试该页面。

我是这样设置的:

var localMediaStream;

navigator.getUserMedia = navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia;

window.onload = function() {
    var video = document.getElementById('video');

    navigator.getUserMedia({video: true}, function(stream) {
        video.src = window.URL.createObjectURL(stream);

        localMediaStream = stream;
    }, function(err) {
        if(err) throw err;
    });
};

我得到的错误是:

TypeError: undefined is not a function (evaluating 'navigator.getUserMedia')

如果我不直接检测并使用 navigator.webkitGetUserMedia (据我了解,这是 Bower 中应该存在的方法),我会得到同样的错误。



Best Answer-推荐答案


这样做

navigator.getUserMedia = navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia;

在加载中

但对我来说,第一次打开页面时它不起作用。 页面刷新后就可以了。

UPD:这是因为 Bowser 的 javascript 注入(inject)得太晚(或根本没有注入(inject))。这是一个 iOs 的 webview 问题。但是 bowser 的团队说他们已经用新的控件而不是 web View 替换了它(不记得名字,抱歉)。

关于javascript - Bowser for iOS getUserMedia 未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30791540/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (http://sqlite.in/) Powered by Discuz! X3.4