我正在使用getusermedia记录音频在我的网站。我已经包含了getusermedia的javascript。该记录功能在网站上运行良好,但在手机上打开时甚至不会弹出许可。
var constraints = {
audio: true,
video: false
}
navigator.mediaDevices.getUserMedia(constraints).then(function(stream) {
permissiongiven = 1;
});这是一个示例代码,它提示我获得许可,但在移动设备上不起作用。我怎样才能让它在这两种设备上工作。任何帮助都是非常感谢的。谢谢。
编辑:-代码现在在移动设备上运行良好。可能是通过铬更新或网站的安全证书解决的。谢谢大家的帮助。
发布于 2020-05-25 05:44:58
注意,在移动设备上,您必须使用SSL来使用getUserMedia()。看看你是否使用http://前缀访问你的网站。尝试将其更改为https://,它应该可以正常工作。
发布于 2019-01-11 21:53:36
发布于 2019-01-17 21:32:15
检查MDN,然后确保浏览器支持它。它说,安卓52+需要Chrome。FWIW 68 为我工作
您还应该特性-检查和捕获错误:
if (!navigator.mediaDevices) {
console.log("Sorry, getUserMedia is not supported");
return;
}
navigator.mediaDevices.getUserMedia(constraints)
.then(stream => permissiongiven = 1)
.catch(error => console.log(error));根据你所犯的错误,我们可能会学到更多。
NotFoundError意味着设备上没有检测到摄像头或麦克风。NotAllowedError意味着未授予用户权限,或者您处于iframe或不是https中。https://stackoverflow.com/questions/54088994
复制相似问题