Прогрессивные веб-приложения (PWA) — это образец создания современных устанавливаемых приложений с использованием веб-технологий для мобильных и настольных устройств.
Одним из критериев создания современного веб-интерфейса, и не случайно PWA, является то, что приложение должно продолжать работать, даже если устройство находится в автономном режиме. Это означает, что экран Chrome Dino исчезнет, если пользователь потеряет доступ к сети на своем устройстве!
Цель всех критериев PWA — помочь пользователям получить высококачественный и конкурентоспособный опыт работы в Интернете. Chrome выполняет проверки на соответствие критериям PWA , прежде чем разрешить возможность установки PWA.
Из Chrome на устройство можно установить только приложения, соответствующие всем основным критериям установки Progressive Web App , включая поддержку автономного режима.
Предыдущая логика обнаружения в автономном режиме
Проверка автономной поддержки уже несколько лет является частью критериев возможности установки PWA. До недавнего времени в Chrome не было возможности симулировать запросы через сервис-воркера, поэтому полная проверка корректного поведения в оффлайне была невозможна.
Это означало, что Chrome не имел возможности проверить, вернул ли обработчик событий fetch
действительный ресурс с HTTP 200 во время автономной проверки. Chrome только проверял, действительно ли у сервисного работника есть обработчик fetch
.
Обновлена логика обнаружения в автономном режиме.
В Chrome 89 добавлена возможность запускать моделируемые офлайн-запросы через сервис-воркера, что позволяет улучшить логику офлайн-обнаружения, чтобы лучше отражать реальную офлайн-поддержку приложения.
Мы планировали использовать эту новую возможность, чтобы гарантировать, что PWA предоставляют действительную страницу в автономном режиме, но отложили эти планы. Проверка возможности установки продолжит проходить, если на странице есть сервисный работник, включающий обработчик событий fetch
.
Что это значит для разработчиков?
Хотя сейчас никаких изменений не требуется , мы настоятельно рекомендуем вам предоставить автономный режим, поскольку мы планируем использовать обновленную логику для проверки допустимости страницы в какой-то момент в будущем.
Вам решать, какой офлайн-опыт вы хотите предоставить. На одном конце спектра находится полнофункциональный автономный режим. Это означает предварительное кэширование всех необходимых ресурсов и данных и синхронизацию данных с вашим сервером, когда пользователь снова окажется в сети. Кэширование ресурсов также поможет улучшить основные жизненно важные показатели сети , поскольку устраняет необходимость каждый раз загружать ресурсы из сети. На другом конце спектра находится настраиваемая резервная страница автономного режима .
Предупреждение, отображаемое на вкладке «Проблемы» инструментов разработчика, будет удалено в Chrome 90.