我们无法使用WebRTC或文件输入从iOS11(公开发布)主屏幕Web应用程序访问相机,详情如下.我们的用户如何继续访问相机?
我们通过https提供网络应用页面.
正如这里的人们所说,Apple docs建议网络应用程序相机功能在11.3与服务工作者一起返回.这很好,但我们还不确定是否我们希望每个人都重新安装,直到我们可以对11.3GM进行彻底测试.
iOS 11.2和iOS 11.1.2无法修复.
似乎我们可以向Web应用程序的现有客户询问
我们当前的生产代码使用的文件输入在iOS 10及更早版本中运行良好多年.在iOS11上,它可用作Safari选项卡,但不能用于主屏幕应用程序.在后一种情况下,相机被打开并且仅显示黑色屏幕,因此它是不可用的.
<meta name="apple-mobile-web-app-capable" content="yes">
...
<input type="file" accept="image/*">
Run Code Online (Sandbox Code Playgroud)
iOS11上的Safari 11提供WebRTC媒体捕获功能,非常棒.
我们可以使用navigator.mediaDevices.getUserMedia根据此处链接的示例代码,在桌面和移动设备上的普通网页上捕捉相机图像到画布.
当我们将页面添加到iPad或iPhone主屏幕时,navigator.mediaDevices变得undefined无法使用.
<meta name="apple-mobile-web-app-capable" content="yes">
...
// for some reason safari on mac can debug ios safari page but not ios home screen web apps
var d = 'typeof navigator : ' + typeof …Run Code Online (Sandbox Code Playgroud) 在我的示例 ReactJs 应用程序中,我使用react-multimedia-capture - 它使用navigator.mediaDevices.getUserMediaMediaRecorder API 来录制视频。
我可以从 Chrome 录制视频,但在 Safari 中我无法捕捉视频。错误是这样的
MediaRecorder 未定义。
有人可以帮助我,例如:
Safari 是否支持基本的视频捕获?