uni-app ios webview中无法获取麦克风权限
uni-app ios webview中无法获取麦克风权限
| 开发环境 | 版本号 | 项目创建方式 |
|---|---|---|
| Mac | 11.6 | HBuilderX |
产品分类:uniapp/App
PC开发环境操作系统:Mac
HBuilderX类型:正式
HBuilderX版本号:3.2.9
手机系统:iOS
手机系统版本号:IOS 14
手机厂商:苹果
手机机型:iPhone6 Plus
页面类型:vue
打包方式:离线
示例代码:
``` js
mediaDevices.getUserMedia()
操作步骤:
使用uni.getRecorderManager(),开启录音后关闭,获取麦克风权限
webview中直接调用mediaDevices.getUserMedia(), 会提示mediaDevices is undefined
预期结果: 浏览器弹出请求麦克风权限提示框
实际结果:
报错,提示mediaDevices is undefined
bug描述: 在iOS下,如果APP本身就拥有麦克风权限,那么iOS的WKWebview的navigator对象中应该是有mediaDevices.getUserMedia方法来获取webview的麦克风权限的,但是uniapp的webview把navigator魔改了,根本没有mediaDevices这个对象,导致取不到麦克风权限
更多关于uni-app ios webview中无法获取麦克风权限的实战教程也可以访问 https://www.itying.com/category-93-b0.html
请提供一下完整的示例代码,或者复现demo
更多关于uni-app ios webview中无法获取麦克风权限的实战教程也可以访问 https://www.itying.com/category-93-b0.html
建议参照官方文档正确使用 参考链接
解决了么,我也遇到了这个问题
兼容问题 你找一下兼容代码就可以了 https://webrtc.github.io/adapter/adapter-latest.js
navigator.mediaDevices.getUserMedia 用这就可以了
回复 3***@qq.com: 引进来了,显示还是navigator.mediaDevices === undefined,怎么解?

