Как открыть PWA из Google Play в Google Chrome вместо WebView? - PullRequest
2 голосов
/ 23 мая 2019

У меня есть настроенный PWA для каждого поддомен веб-сайта.Идея состоит в том, чтобы в Google Play был один PWA, который после установки позволит пользователю выбирать субдомен, перенаправлять его на субдомен и затем предлагать ему установить PWA, связанный с субдоменом, который он выбрал.

Проблема в том, что PWA, установленный из Google Play (или напрямую из apk), открывается в WebView, который, похоже, не запускает событие berforeinstallprompt на поддомене (когда я открываю поддомен в Google Chrome, событиеуволен правильно).Параметр «Добавить на главный экран» по-прежнему доступен из меню WebView.

Это оставляет мне два варианта, но я не могу заставить их работать:

1) Запустите PWA, установленный из GoogleИграйте в Google Chrome вместо WebWiev.

2) Узнайте, как запустить berforeinstallprompt в WebView.

Возможно ли любое из них?Как?

Код, который перехватывает событие berforeinstallprompt и отображает кнопку установки, очень похож на код на https://developers.google.com/web/fundamentals/app-install-banners/,, поэтому проблема должна быть в другом месте.

    var deferredPrompt;
    var button = document.getElementById("install-button");

    window.addEventListener('beforeinstallprompt', (e) => {
        e.preventDefault();
        deferredPrompt = e;
        button.style.display = 'block';
    });

1 Ответ

0 голосов
/ 10 июля 2019

beforeinstallprompt будет запущен только в некоторых случаях, например, если ваше приложение уже установлено или ваш сайт не обслуживает все запросы в https.Кроме того, попробуйте запустить lighthouse more tools => developer tools => Audits, запустить его и посмотреть, оптимизировано ли ваше приложение.

Пожалуйста, опишите подробнее, чего вы хотите достичь, почему вы используете субдомены в PWA?

...