Я думаю, что в iOS 13.2 / 13.3 мы обнаружили регресс в отношении PWA, работающих в автономном режиме.
Поскольку в iOS PWA не может получить доступ к getUserMedia (), мы полагаемся на атрибут захвата во входном теге HTML5, чтобы позволить пользователю сделать снимок и отправить его на сервер.
Наш код выглядит так:
<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>
Когда мы запускаем PWA в автономном режиме на устройствах с iOS 13.1 или ниже, все работает как положено. Если мы запускаем PWA в режиме браузера в Safari, все работает независимо от версии iOS.
Когда мы запускаем PWA на устройствах с iOS 13.2 или 13.3, эта функция работает, пока мы не переместим PWA в фоновый режим, а затем снова в передний план. После отправки PWA на задний план при съемке запускается камера, но предварительный просмотр становится черным. Все элементы управления камерой (вспышка и т. Д.) Работают, но изображение не делается.
Мы запускаем тест с подключенным регистратором консоли XCode и, похоже, AVCaptureSession не может быть запущен после того, как приложение было помещено в фоновый режим.
Вот следы журналов устройства:
Мы строим нашу PWA с Angular 8.
Кто-нибудь видел что-то подобное или может намекнуть?