Содержание
Прогрессивное веб-приложение (PWA) — это сайт, который можно установить на главный экран телефона, запускать в отдельном окне без адресной строки, использовать без сети и получать через него push-уведомления. Оно заменяет мобильное приложение, когда продукту нужны быстрый доступ, уведомления и базовая работа офлайн, но не нужны глубокие функции устройства и присутствие в магазинах приложений.
Разберём, что умеет PWA, где его ограничения и как понять, подходит ли он вашему продукту.
Что такое PWA и что оно умеет?
PWA — это веб-приложение с манифестом и сервис-воркером: манифест описывает, как приложение выглядит при установке, а сервис-воркер работает в фоне, кеширует файлы и данные и принимает push-уведомления. Для пользователя это выглядит почти как обычное приложение, только без установки из магазина.
Что умеет PWA:
- устанавливаться на главный экран с иконкой и запускаться в отдельном окне;
- работать без сети или при плохом соединении за счёт кеша;
- отправлять push-уведомления, в том числе на iPhone — для установленных на главный экран веб-приложений начиная с iOS 16.4;
- обновляться мгновенно, без публикации в магазинах и ожидания проверки;
- находиться в поиске и открываться по ссылке, как обычный сайт.
Чем PWA отличается от нативного приложения?
PWA отличается от нативного приложения тем, что работает в браузере: это дешевле в разработке и обновлении, но с ограниченным доступом к функциям устройства и без присутствия в магазинах приложений. Поддержка возможностей также различается между платформами: на Android она шире, на iOS — уже.
| Критерий | PWA | Нативное или кроссплатформенное приложение |
|---|---|---|
| Установка | С сайта, без магазина | Через App Store и Google Play |
| Обновления | Мгновенно, без проверки магазина | Через публикацию и проверку |
| Push-уведомления | Есть, на iOS — только для установленных PWA | Полноценные |
| Работа офлайн | Есть, через кеш сервис-воркера | Полноценная |
| Функции устройства | Камера, геолокация, базовые API | Полный доступ: фон, Bluetooth, NFC и другие |
| Поиск и ссылки | Индексируется, открывается по ссылке | Нужна отдельная веб-версия |
| Стоимость | Как у сайта, плюс немного работы | Выше: платформы, магазины, поддержка |
Фото: Unsplash
Как превратить сайт в PWA?
Превратить сайт в PWA можно, добавив манифест, сервис-воркер и HTTPS. Сама по себе это небольшая работа; основное время уходит на продумывание офлайн-сценариев и уведомлений.
{
"name": "Сервис доставки",
"short_name": "Доставка",
"start_url": "/",
"display": "standalone",
"background_color": "#ffffff",
"theme_color": "#1e3a8a",
"icons": [
{ "src": "/icons/192.png", "sizes": "192x192", "type": "image/png" },
{ "src": "/icons/512.png", "sizes": "512x512", "type": "image/png" }
]
}
// Регистрация сервис-воркера: кеширование файлов и приём push-уведомлений
if ('serviceWorker' in navigator) {
navigator.serviceWorker.register('/sw.js')
}
Что продумать отдельно
- Какие данные и страницы должны работать без сети.
- Что происходит с действиями, совершёнными офлайн: очередь и отправка при появлении связи.
- Когда и о чём присылать уведомления, чтобы их не отключили.
- Как подсказать пользователю, что приложение можно установить.
Когда PWA подходит, а когда нет?
PWA подходит продуктам, которым важны быстрый доступ и уведомления, но не нужны глубокие функции устройства: сервисы заказов и записи, личные кабинеты, внутренние инструменты компании, контентные продукты. Нативное или кроссплатформенное приложение нужно, когда без функций устройства или присутствия в магазинах продукт теряет ценность.
Когда PWA — хороший выбор:
- бюджет ограничен, а продукт уже работает как сайт;
- нужно быстро проверить, будут ли пользователи возвращаться через иконку и уведомления;
- внутренние приложения для сотрудников, которые не нужно публиковать;
- важно, чтобы продукт находился в поиске.
Когда лучше приложение:
- нужны фоновая работа, Bluetooth, NFC, сложная работа с камерой;
- аудитория ищет продукт в магазинах приложений;
- критичны push-уведомления для всех пользователей iPhone, включая тех, кто не установил PWA.
Выбор технологии для полноценного приложения мы разбирали в статье Flutter, React Native или натив, а сам вопрос «нужно ли приложение» — в статье нужно ли бизнесу мобильное приложение.
Как оценить результат после запуска PWA?
Результат оценивают по поведению пользователей: сколько из них устанавливают приложение на главный экран, как часто возвращаются, сколько подписываются на уведомления и как это влияет на конверсию. Если цифры хорошие, PWA может оставаться основным решением надолго.
Что отслеживать:
- долю установок на главный экран среди активных пользователей;
- удержание установивших по сравнению с остальными;
- подписки на уведомления и отписки;
- конверсию и скорость загрузки на мобильных — об этом в статье Core Web Vitals.
Коротко
- PWA — сайт, который устанавливается на главный экран, работает офлайн и присылает уведомления.
- Обновления мгновенные, стоимость близка к стоимости сайта, продукт остаётся в поиске.
- Ограничения — доступ к функциям устройства и отсутствие в магазинах приложений; на iOS возможностей меньше.
- PWA подходит сервисам заказов, кабинетам, внутренним инструментам и проверке спроса на приложение.
- Если нужны фоновые функции, Bluetooth или присутствие в магазинах — выбирайте приложение.
Частые вопросы
Можно ли опубликовать PWA в магазине приложений?
В Google Play — да, через обёртку, которая упаковывает PWA в приложение. В App Store правила строже: простая обёртка над сайтом без дополнительной ценности может не пройти проверку.
Работают ли push-уведомления PWA на iPhone?
Да, начиная с iOS 16.4, но только если пользователь добавил веб-приложение на главный экран. Для посетителей, которые просто открыли сайт в Safari, push недоступны.
Сколько стоит сделать PWA из существующего сайта?
Базовые манифест и сервис-воркер — небольшая работа. Основные затраты — на продуманные офлайн-сценарии и уведомления, и они зависят от того, сколько функций должно работать без сети.



