我认为我们在iOS 13.2/13.3中发现了一个关于在独立模式下运行的PWA的回归。
由于在iOS上,PWA不能访问getUserMedia(),因此我们依赖于HTML5输入标记上的capture属性来让用户拍摄照片并将其发送到服务器。
我们的代码如下所示:
<div class="camera-upload">
<input type="file" class="hidden" name="uploadPhotoInput" accept="image/*" capture="environment" (change)="onTakePhoto($event)">
<button type="button" class="btn btn-primary">Take photo</button>
</div>当我们在iOS 13.1或更低版本的设备上以独立模式运行PWA时,一切都像预期的那样工作。如果我们在Safari的浏览器模式下运行PWA,那么无论iOS版本是什么,一切都会正常工作。
当我们在使用iOS 13.2或13.3的设备上运行PWA时,该功能一直有效,直到我们将PWA放在后台,然后再放到前台。在PWA被发送到后台后,捕获启动相机,但预览显示为黑色。所有的相机控制(闪光灯等)都可以工作,但没有拍照。
我们在附加了XCode控制台记录器的情况下运行测试,在应用程序被放入后台后,AVCaptureSession看起来无法启动。
以下是设备日志的跟踪:
我们正在使用Angular 8构建我们的PWA。
有没有人看到过这样的东西,或者能给我们一个提示?
发布于 2020-01-14 18:43:57
发布于 2020-04-04 22:45:39
呃..。不,13.4号还在用,对不起。
我只是告诉用户,如果他们收到了这个,他们应该轻弹应用程序来关闭它(而不是直接回家)。这是一个糟糕的变通办法,但希望有一天能有一个真正的解决办法。
发布于 2020-04-02 11:37:32
最后,这个问题在iOS13.4中得到了解决
https://stackoverflow.com/questions/59254979
复制相似问题