Сначала проверь базу: сайт должен открываться по HTTPS, отдавать корректный manifest и иметь service worker без ошибок в консоли. Если манифест не подхватывается, иконка, name и start_url остаются пустыми, а Safari просто не показывает нормальную установку.
Дальше смотри на саму точку входа. На iPhone PWA обычно ставится только из Safari и только через меню «Поделиться» → «На экран “Домой”». Если пользователь открывает страницу внутри WebView, in-app браузера или встроенного экрана приложения, кнопки установки там не будет — это не баг трекинга, а ограничение среды.
Еще частая причина — сайт не проходит базовые критерии пригодности: нет manifest.json, service worker не контролирует текущую страницу, стартовый URL редиректит, либо страница закрыта от индексации и ломает загрузку ассетов. Отдельно проверь: иконки должны быть квадратными, а manifest — без битых ссылок и 404 на изображения.
Диагностика простая: открыть сайт в Safari, проверить Console, Application/Storage, затем вручную удалить кэш и service worker, если установка уже ломалась. Если все условия выполнены, а кнопки нет, чаще всего проблема в разметке, редиректах или в том, что сайт фактически не воспринимается как installable. Сначала чинится база, потом уже ищется «особенность iPhone».
🚀 WebView & PWA
@kustov_webview
PWA на iPhone не ставится не из-за магии iOS, а из-за пары типовых поломок
Этот пост опубликован в Telegram-канале 🚀 WebView & PWA. Подписаться можно по ссылке: @kustov_webview.