PWA позволяет установить сайт как приложение, но браузер покажет предложение установки только если выполнены технические условия.

Почему возникает проблема

Чаще всего не хватает корректного manifest, service worker, HTTPS, иконок нужного размера, display mode или сайт уже не проходит критерии установки в конкретном браузере.

Что проверяю

  • Есть ли manifest.webmanifest и корректно ли он отдается.
  • Зарегистрирован ли service worker.
  • Работает ли сайт по HTTPS.
  • Есть ли иконки нужных размеров.
  • Появляется ли событие beforeinstallprompt.

Как решаю задачу

Я проверяю PWA через браузерные инструменты и исправляю недостающие условия установки, а не просто добавляю кнопку в интерфейс.

  • Проверяю manifest и иконки.
  • Настраиваю service worker.
  • Исправляю scope и start_url.
  • Добавляю обработку beforeinstallprompt.
  • Тестирую установку на desktop и mobile.

Что будет на выходе

  • Сайт соответствует базовым требованиям PWA.
  • Появляется корректный сценарий установки.
  • Иконка и название выглядят аккуратно.
  • Пользователь может запускать сайт как приложение.

Что подготовить

  • URL сайта.
  • Иконки приложения, если есть.
  • Доступ к frontend-файлам.
  • Нужен ли офлайн-режим или только установка.

Вопросы и ответы

Почему кнопка установки не показывается всегда?

Браузер сам решает, когда доступен prompt, а сайт должен корректно обработать событие.

PWA работает на iPhone?

Работает, но поведение установки и push-уведомлений отличается от Chrome на Android.

Нужна похожая задача?

Опишите, что именно не работает и где это видно. Я быстро разберу симптомы, проверю техническую причину и предложу понятный план исправления без лишних созвонов и затяжки.