Jac*_*cek 3 javascript google-chrome-os google-chrome-app getusermedia
我正在测试以下场景:我在单独的窗口中调用视频群聊网页,但应用程序无法访问麦克风和摄像头-按钮为红色,消息提示“环聊无法使用所选的麦克风/摄像头”。
我已包含权限"audioCapture"和"videoCapture"。
要使其工作必须做什么?
编辑:
允许媒体应用访问摄像头和麦克风后-我可以在环聊设置中看到这一点,但图片和语音不会通过环聊传输给其他参与者。我必须为流媒体设置什么?
我已经有了这段代码:
navigator.webkitGetUserMedia({ audio: true, video: true },
function (stream) {
mediaStream = stream;
},
function (error) {
console.error("Error trying to get the stream:: " + error.message);
});
Run Code Online (Sandbox Code Playgroud)
如果您需要为<webview>嵌入式页面提供音频/视频,仅"audioCapture"/ "videoCapture"权限是不够的。
要使用它们,页面需要浏览器的许可。在普通的Chrome浏览器中,您会看到一个信息栏,允许用户允许/拒绝请求。
<webview>不显示这些元素,而是引发一个事件,由应用程序允许/拒绝它:
permissionrequest当访客页面需要从嵌入器请求特殊权限时触发。
以下示例代码将向来宾页面授予对该
webkitGetUserMediaAPI的访问权限。请注意,使用此示例代码的应用程序本身必须指定audioCapture和/或videoCapture显示权限:Run Code Online (Sandbox Code Playgroud)webview.addEventListener('permissionrequest', function(e) { if (e.permission === 'media') { e.request.allow(); } });