Закройте окно браузера и откройте PWA после установки PWA - PullRequest
0 голосов
/ 16 декабря 2018

У меня Chrome, устанавливающий мой PWA на Android - после его установки я бы хотел автоматически закрыть окно браузера, из которого он был установлен, и открыть PWA (чтобы пользователь не продолжал в окне браузера, думая, что он 'Вы используете PWA) - возможно ли это?

Ответы [ 2 ]

0 голосов
/ 16 марта 2019

Я искал подобное решение и пока не нашел способ сделать это.Пока я пытаюсь описать свои выводы:


ЗАКРЫТИЕ ОКНА БРАУЗЕРА :

, как описано в этом ответе window.close () можно вызывать только на окнах / вкладках, которые сам скрипт открыл.Там обсуждаются некоторые возможные обходные пути.


ОТКРЫТИЕ ПРАВА ПРАВА ПОСЛЕ УСТАНОВКИ:

Google описывает в своей статье Основы WebApk itследующим образом:

Когда на Android установлено Progressive Web App, оно зарегистрирует набор фильтров намерений для всех URL-адресов в рамках приложения.Когда пользователь нажимает на ссылку, которая находится в области действия приложения, приложение будет открываться, а не открываться на вкладке браузера.

Я надеялся, что это будет работать и сразу после установки/ Добавление на домашний экран из все еще открытого окна браузера.

Основываясь на тестировании с двумя устройствами Android, кажется, что на данный момент пользователь должен вручную открыть PWA с домашнего экрана один раз для интерпретации Chrome / Androidобласть веб-приложений manifest.json, предназначенных для открытия страницы в автономном режиме.

Это печально, даже если iOS, похоже, справляется с этим другим.

Может, я что-то пропускаю в статье Google?Я также не совсем понимаю API намерений андроидов - так что, возможно, есть еще способ достичь этого (?)

0 голосов
/ 17 декабря 2018

Основано на этом сообщении в блоге:

Когда PWA установлен, он появится на домашнем экране, в панели запуска приложений, в Настройках и в любом другом первоклассном приложении для граждан вОС, включая информацию о батарее и месте, используемом в системе.

Существует событие отслеживания, когда пользователь открывает приложение с главного экрана.Это означает, что пользователь щелкнул значок приложения или на Android с поддержкой WebAPK также щелкнул ссылку, указывающую на область действия PWA, и ему необходимо закрыть браузер.

start_url: '/?utm_source=standalone&utm_medium=pwa'

Кроме того, следующий скрипт оставляет наслогическое указание, находится ли пользователь в браузере (true) или в режиме автономного приложения (false)

var isPWAinBrowser = true;
// replace standalone with fullscreen or minimal-ui according to your manifest
if (matchMedia('(display-mode: standalone)').matches) {
     // Android and iOS 11.3+
     isPWAinBrowser = false;
} else if ('standalone' in navigator) {
     // useful for iOS < 11.3
     isPWAinBrowser = !navigator.standalone;
}
...