Angular PWA не работает в автономном режиме на сафари и старом браузере - PullRequest
0 голосов
/ 30 января 2019

Я создал свой PWA следующим образом: https://angular.io/guide/service-worker-getting-started

Он отлично работает в автономном режиме на моем Chrome Desktop, но не работает в автономном режиме на iOS 12 Safari или Android 5 Chrome.Я получаю доступ к сети с ip XXX.XXX.XXX:8080 с ssl-сервера localhost с помощью команды http-server.

Я не понимаю.Мне нужно настроить манифест вручную для старых браузеров и сафари, где работники сферы обслуживания не работают?Или мой проект Angular PWA, сгенерированный в CLI, должен сделать все для меня?

пример моего кода https://github.com/GuilhermeLessa/teste-pwa

1 Ответ

0 голосов
/ 01 февраля 2019

Я новичок, все еще не могу перестать печатать здесь, пожалуйста, поправьте меня всех!Максимальная поддержка Safari (как указано в документации) составляет 50 МБ (и 50 МБ для indexedDB и Cache Api) на мобильных устройствах, но на настольном компьютере написано «неограниченное», у меня никогда не было возможности проверить это.Я разработал приложение, используя Express, Nodejs и некоторые очевидные JS.Он отлично работает с Chrome, Firefox и Opera (на устройствах Android), версия MS Edge 38, похоже, не поддерживает его.Safari поддерживает таким образом, что в автономном режиме он загружает страницу, тексты и изображения, но не видео, которое, как я полагаю, является причиной ограничения в 50 Мб, как я только пробовал на мобильном устройстве.MS Edge версии 42 поддерживает почти полностью (по крайней мере, на моем ASUS p027) не получил машину с последней установленной MS Edge.Также обратите внимание, что не все старые браузеры будут поддерживать, упоминаете ли вы это в манифесте или нет, поскольку они несовместимы с сервисным работником или Cache API.Я знаю, что создание PWA приложения - это один из шагов, чтобы получить файл манифеста, но PWA, с другой стороны, работает без файла манифеста, только оценка маяка будет меньше 100%.Таким образом, я бы сказал, что старые браузеры не поддерживают PWA, и у вас останутся проблемы.Кроме того, браузеры Chrome и Opera могут иметь пул хранения до 33% доступного свободного дискового пространства, и каждый источник может иметь до 20% от этого пула.Пул Firefox занимает 50% доступного свободного дискового пространства, но у источника может быть максимум 2048, и это называется жестким пределом (верхняя граница может быть меньше этой в зависимости от пула).Кроме того, в браузерах применяется политика LRU (наименьшее количество недавно использованных), также известная как наилучшее усилие для временного хранилища, хотя она не применяется к постоянному хранилищу.для Chrome с высоким уровнем вовлеченности сайта, или для того, чтобы сделать книгу сайта помеченной (в то время как количество закладок меньше 5), добавить сайт на домашний экран или разрешить push-уведомление, если любой из этих 4 вариантов, выбранных Chrome, превратит его в постоянное хранилище, такLRU не состоится на этом.Где, как и в Firefox, вы должны явно его кодировать, и браузер спрашивает с помощью всплывающего окна, доволен ли пользователь постоянным хранилищем или нет.Я знаю, что отвлекся, но все это подпадает под PWA.Надеюсь, вы получите лучший ответ.Приветствия:)

...