在Android浏览器上检测到对getUserMedia的支持失败
detecting support for getUserMedia on Android browser fails
我在检测对getUserMedia的支持时遇到问题。我使用的是Android 4.2.2。
问题是,android浏览器的行为就好像它支持getUserMedia,但在使用它时,我既没有调用成功函数,也没有调用失败函数。以下代码:
function onCameraFail(e){
alert("Failed getting media");
}
if (navigator.webkitGetUserMedia) {
alert("getMedia supported");
navigator.webkitGetUserMedia({video:true}, function (stream) {
alert("Got media");
}, onCameraFail);
alert("after getMedia");
}else{
//Old device, no support for providing a photo
alert("No support for getUserMedia");
}
在Android浏览器上,此代码显示弹出窗口"getUserMedia supported",但我从未收到任何弹出窗口,上面写着"Got media"或"Failed geting media"。当在Android上的Chrome中运行相同的代码时,它会说"不支持getUserMedia"
为什么会有这种行为?我认为这是检查功能支持的常见方法。
GetUseMedia在Android浏览器中不受支持。
http://caniuse.com/stream
getUserMedia(constraints,successCallBack,errorCallBack)
在errorCallBack中,检查您得到的错误。你每次都应该弄清楚确切的原因。
WebRTC功能在Android上可用。这取决于应用程序是否具有:
- 正确的用户权限
- 用户已单击"是"以弹出所述权限
- ChromeWebView是在上述操作之后实例化的
- ChromeWebView onPermissionRequest已被否决,允许摄像头访问
您应该在JavaScript中获得适当的错误消息(当调用getUserMedia时),以了解失败的位置,例如NotReadableError突出显示启动视频源的权限/无法启动视频源。始终使用适配器处理一致的错误消息:https://webrtc.github.io/adapter/adapter-latest.js
有关详细信息,请参阅以下内容:NotReadableError:无法启动源
相关文章:
- jQuery-2.1.1.min.js或最新版本jQuery-2.13.min.js不会't支持'@
- jQuery检测浏览器是否支持Zoom
- 错误:对象没有't支持'自动完成'
- EmberJS中支持单字母单词模型
- javascript中的命名空间,IDE中支持代码完成/内容辅助's
- Internet Explorer缺少占位符支持,特别是密码字段
- 为什么我得到错误IE修剪方法是't支持
- 任何浏览器都不支持javascript函数
- GTK百老汇支持同时连接
- JQuery示例不起作用-“;对象没有't支持属性或方法'按钮'&”;
- 对象不支持属性或方法“自动完成”
- 对象没有'不支持set_viewXML
- Javascript Q库浏览器支持
- 您的平台不支持RxJS-Array.observe
- React Native当前是否支持访问用户'的通讯簿
- 将HTML(支持文件)中的令牌(字符串、数字等)传递给LogiXML
- 错误:语法错误,无法识别的表达式:不支持的伪:无效/RectJS/Unit Testing
- Excellen导出xlsx支持
- Django'支持Javascript文件中的翻译
- 在Android浏览器上检测到对getUserMedia的支持失败