Открытие внешних ссылок в PWA

у меня есть PWA в котором в какой-то момент нужно переходить на другой сайт. Приложение его открывает, но теряется режим полноэкранного просмотра и появляются панели как у браузера сверху и снизу. Есть ли способ скрыть эти панели что бы все выглядело так же как и в режиме standalone? Попробовал сделать через window.open, window.location.href и через тег "а" с разными настройками rel.


Ответы (1 шт):

Автор решения: Stanislav Volodarskiy

Параметр scope в манифесте определяет в каких пределах пользователь может перемещаться оставаясь "внутри" PWA. Если пользователь выходит за указанные рамки, окно становится обычным окном браузера. В вашем случае вы переходите на другой домен, а другой домен никогда не попадает в ваш scope.

Проблему можно решить если сделать перенаправление другого сайта в ваш домен, но это много работы и не всегда будет работать для https.

Другая идея - поместить iframe в ваше PWA. Это тоже не для всех сайтов будет работать, но гораздо проще в реализации, чем перенаправление на сервере.

https://developer.mozilla.org/en-US/docs/Web/Manifest/scope:

The scope member is a string that defines the navigation scope of this web application's application context. It restricts what web pages can be viewed while the manifest is applied. If the user navigates outside the scope, it reverts to a normal web page inside a browser tab or window.

If the scope is a relative URL, the base URL will be the URL of the manifest.

→ Ссылка