javascript - IOS手机无法访问摄像头
问题描述
我正在开发一个使用 webRTC 的视频通话网络应用程序,我们希望它也能在移动设备上运行。到目前为止,在 Android 上一切正常,但在 iphone Safari 浏览器上,用户每次都必须允许访问相机和麦克风的权限。在它停止请求用户访问硬件之前,这并不是什么大问题。在我们移至新域后,此问题开始发生。有点像https://dev.somedomain.ext/dev/
。
看起来是因为新域,但有没有办法解决这个问题。理想情况下,我想让 iphone 在第一次允许之后总是允许权限(这就是机器人的行为方式)。
我正在使用下面的代码来请求摄像头和麦克风。
var constraints = { audio: true, video: true }
navigator.mediaDevices.getUserMedia(constraints);
提前致谢 :)
解决方案
正如我所想的那样,由于域更改而没有发生。Screenshare
当 webRTC 请求摄像头和麦克风时,API 正在同时初始化。访问,这阻止了请求。我找不到任何理由为什么它可以在 android/desktop 上运行,但不能在 Iphones 上运行!
我希望这可以帮助任何有类似问题的人。
推荐阅读
- scala - 是否将同步 HTTP 请求包装在被视为 CPU 或 IO 约束的 Future 中?
- javascript - 将一个字母替换为空时出错,然后将其与 javaScript 和 cypress 中的数字进行比较
- javascript - 如果使用 JS 调用,则不应用转换
- excel - 从单元格中的列表中提取重复项
- c++ - 终端执行第一个循环并忽略另一个循环
- javascript - 反应:为什么我的 id 未定义?axios.post 请求删除数据而不是更新
- c - POSIX 标准是否要求其规范仅用 C 语言实现?
- javascript - 带有工作箱的服务人员 - 未捕获的 SyntaxError:意外的令牌 '<' .. 跳过等待
- android - 使用 JNI so 文件导入 Android AAR
- mysql - 我应该选择整个表还是每次都使用 WHERE 条件建立连接?