if (navigator.mediaDevices.getUserMedia) {
console.log('最新的标准API');
navigator.mediaDevices
.getUserMedia(constraints)
.then(this.getUserMediaSuccess)
.catch(err => {
console.log(err);
});
} else if (navigator.webkitGetUserMedia) {
console.log('webkit核心浏览器');
navigator.webkitGetUserMedia(constraints, this.getUserMediaSuccess, err => {
console.log(err);
});
} else if (navigator.mozGetUserMedia) {
console.log('firfox浏览器');
navigator.mozGetUserMedia(constraints, this.getUserMediaSuccess, err => {
console.log(err);
});
} else if (navigator.getUserMedia) {
console.log('旧版API');
navigator.getUserMedia(constraints, this.getUserMediaSuccess, err => {
console.log(err);
});
} else {
console.log(JSON.stringify(navigator));
console.log('无法使用摄像头1');
}
![8***@qq.com](https://img-cdn-tc.dcloud.net.cn/account/identicon/115dc0b9c452b30a28e189d65c10dd3f.png)
- 发布:2020-10-09 01:13
- 更新:2021-10-22 16:47
- 阅读:2982
产品分类: uniapp/App
PC开发环境操作系统: Mac
PC开发环境操作系统版本号: 10.15.6
HBuilderX类型: 正式
HBuilderX版本号: 2.8.13
手机系统: iOS
手机系统版本号: iOS 12.1
手机厂商: 苹果
手机机型: iphone7
页面类型: vue
打包方式: 云端
项目创建方式: HBuilderX
示例代码:
操作步骤:
1、新建一个html文件,js使用webrtcAPI,navigator.mediaDevices.getUserMedia
2、在uni-app中新建一个页面,页面中通过web-view组件加载html文件的地址
1、新建一个html文件,js使用webrtcAPI,navigator.mediaDevices.getUserMedia
2、在uni-app中新建一个页面,页面中通过web-view组件加载html文件的地址
预期结果:
希望能够像原生浏览器(安卓:谷歌;ios:safari)中直接打开设备上的摄像头进行拍照或录像
希望能够像原生浏览器(安卓:谷歌;ios:safari)中直接打开设备上的摄像头进行拍照或录像
实际结果:
Error in nextTick: "TypeError: undefined is not an object (evaluating 'navigator.mediaDevices.getUserMedia')"
Error in nextTick: "TypeError: undefined is not an object (evaluating 'navigator.mediaDevices.getUserMedia')"
bug描述:
在UNI-APP中通过web-view组件打开H5,H5中调用navigator.mediaDevices.getUserMedia报错
4 个回复
深海智行 - 专注前端培训
https://caniuse.com/?search=mediaDevices
l***@163.com
我也遇到了这个问题,请问目前解决了吗?
s***@163.com
亲 现在解决了吗
2021-06-30 17:54
s***@163.com
一样的问题,请问现在解决了吗
1***@163.com
解决了没,ios下出现这个问题