Настройки PWA
Вкладка «Настройки PWA» — иконка, взаимодействие на iOS, push-промпт, webview-bypass, манифест, внешний вид и похожие приложения.
Вкладка Настройки PWA содержит пять блоков (иконка на экране, взаимодействие на iOS, запрос уведомлений, открытие в браузере, манифест), подвкладку Внешний вид и вкладку Похожие. Тексты push и webview языкозависимые.
Иконка на домашнем экране
| Поле | Тип | За что отвечает | По умолчанию |
|---|---|---|---|
| Использовать отдельную иконку | переключатель | Позволяет задать иконку для «Add to Home Screen», отличную от иконки страницы PWA | выключено |
| Иконка | upload (кроп 1:1) | Файл кастомной иконки | — |
Если переключатель выключен или файл не загружен, darkcore не добавляет иконки в manifest.json и <head>. Браузер или ОС использует собственный стандартный вид. Если отдельная иконка есть, превью показывает её в трёх формах маскирования: Круг (Pixel), Скруглённый квадрат (Samsung), Скруглённый (iOS).
Взаимодействие на iOS
Этот блок относится к PWA. Поток только выбирает PWA как цель правила и не меняет её iOS-сценарий.
| Режим iOS | Флоу |
|---|---|
| Лендинг | Показывает PWA. В Safari пользователь может добавить её на экран «Домой». Закрытие инструкции не ведёт на оффер. |
| Прямой редирект | Сразу ведёт на оффер, без показа PWA. |
| Гибрид | «Скачать» → анимация → «Открыть» → оффер. После анимации или закрытия подсказки автоматического перехода нет. |
Для режимов Прямой редирект и Гибрид доступна опция Слать Lead при редиректе без инсталла. В гибридном режиме нажатие Открыть классифицируется как редирект без инсталла.
Миграция старых настроек
При миграции старые настройки уровня потока переносились в PWA только тогда, когда все потоки, использующие эту PWA, имели одинаковые явные значения, а у PWA ещё не было собственного значения. В остальных случаях сохраняется безопасный дефолт PWA.
Запрос уведомлений (push pre-prompt)

| Поле | Тип | За что отвечает | По умолчанию |
|---|---|---|---|
| Включено | переключатель | Показывать pre-prompt перед системным запросом | включено |
| Стиль промпта | select | Модалка / Верхний баннер / Нижний баннер / Нативный (без pre-prompt) | Модалка |
| Триггер показа | select | При загрузке / С задержкой / После клика «Установить» / При клике Install / После скролла % / На выход | С задержкой |
| Задержка (секунды) | число 0–30 | Пауза перед показом (только для триггера «С задержкой») | 2 |
| После отказа | select | Больше не показывать / Каждый визит / Напомнить ещё раз / Каждые N дней | Больше не показывать |
| Интервал (дни) | число 1–30 | Для стратегии «Каждые N дней» | 3 |
| Заголовок / Текст | текст (локализ.) | Тексты промпта | плейсхолдеры |
| Кнопка принять / отклонить | текст (локализ.) | Тексты кнопок | «Разрешить» / «Позже» |
| Иконка промпта | upload (1:1) | Иконка в промпте (фолбек — иконка приложения) | — |
| Затемнение фона | переключатель | Оверлей за модалкой (только стиль «Модалка») | включено |
| Закрывать при клике снаружи | переключатель | Разрешение закрыть кликом вне модалки | включено |
Стиль Нативный открывает системный диалог браузера напрямую — он требует жеста пользователя, поэтому доступны только триггеры «После клика «Установить»» и «При клике Install». Остальные триггеры браузер тихо заблокирует.
Открыть в браузере (webview-bypass)
In-app браузеры Instagram, Facebook и TikTok не дают полноценно установить PWA. Webview-bypass распознаёт такой браузер и показывает пользователю короткий путь в Chrome или Safari. Здесь настраивается вид этого экрана.
| Поле | Тип | За что отвечает | По умолчанию |
|---|---|---|---|
| Заголовок / Текст / Текст кнопки | текст (локализ.) | Надписи заглушки (пусто = стандартные) | плейсхолдеры |
| Затемнение фона | переключатель | Полупрозрачный фон за модалкой | включено |
| Разрешить закрытие модалки | переключатель | Можно ли закрыть модалку, оставшись в in-app браузере | включено |
Как работает выход из webview
| Платформа | Основной сценарий | Если автоматический выход не сработал |
|---|---|---|
| Android | Страница пытается открыть текущий URL в Chrome через системный intent | Показывает кнопку повторного открытия, затем URL, который можно скопировать или открыть вручную |
| iOS | Страница пытается открыть Safari и копирует текущий URL | Показывает готовую ссылку и инструкцию: скопировать её, открыть Safari и вставить в адресную строку |
Автоматический переход может не сработать, когда in-app браузер блокирует внешние схемы без жеста пользователя, Chrome/Safari недоступен как ожидаемый браузер, ОС запретила доступ к буферу обмена или открытие заблокировано политикой приложения. Поэтому модалка не полагается только на редирект: она оставляет кнопку, видимый URL и ручной сценарий.
Эта модалка сохраняет установку даже в жёстких webview, где обычный автоматический редирект просто останавливается. Во многих PWA-решениях пользователь остаётся внутри Facebook или Instagram без понятного следующего шага; darkcore сразу даёт рабочий fallback для Android и iOS.
PWA-манифест
Формирует manifest.json, который раздаёт traffic-engine.
| Поле | Тип | За что отвечает | Лимит |
|---|---|---|---|
| Короткое название | текст | Название под иконкой, когда полное не влезает | до 12 символов |
| Цвет темы | переключатель «По теме устройства» + hex | Цвет панели браузера / переключателя задач | #RRGGBB |
| Цвет фона | hex | Фон экрана заставки | #RRGGBB |
| Описание | textarea | description в манифесте | до 300 символов |
По умолчанию цвет темы — «По теме устройства» (авто, следует светлой/тёмной теме). Выключите, чтобы задать свои цвета.
Внешний вид
| Поле | Тип | За что отвечает | По умолчанию |
|---|---|---|---|
| Цвет действий | hex | Единый CTA-цвет, который наследуют все кнопки модалок (push, webview, install) | #1a73e8 |
| Тема | select | Светлая / Тёмная / Авто — тема страницы PWA | Авто |
Кнопка «Установить» всегда остаётся в стиле Play Market — «Цвет действий» на неё не влияет.
Похожие приложения
Вкладка Похожие позволяет связать другие PWA этого воркспейса — они показываются в блоке «Похожие приложения» на установочной странице. Поиск + добавление/удаление из списка; текущее приложение само себя исключает.