PWA в ios, запретить добавлять домашний экран несколько раз - PullRequest
0 голосов
/ 23 декабря 2018

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

Может кто-нибудь помочь мне в этом?Можем ли мы решить эту проблему?Пожалуйста, предложите что-то вроде ограничения в ios для pwa!

const isIos = () => {
      const userAgent = window.navigator.userAgent.toLowerCase();
      return /iphone|ipad|ipod/.test(userAgent);
    }
    const isInStandaloneMode = () => ('standalone' in window.navigator) && (window.navigator.standalone);
    if (isIos() && !isInStandaloneMode()) {
        var deferredPrompt;
        window.addEventListener('beforeinstallprompt', function (e) {
          // Prevent Chrome 67 and earlier from automatically showing the prompt
          e.preventDefault();
          // Stash the event so it can be triggered later.
          deferredPrompt = e;
              var display = true;
            setInterval(function () {
            document.getElementById("balloonMessage").style.display = display ? "none" : "block";
            display = !display;
          }, 5000);      
        });
    }    

Ответы [ 2 ]

0 голосов
/ 20 января 2019

PWA в iOS еще не полностью поддерживаются.Это может сделать только столько, сколько автономное кэширование, но это все.Версия A2HS для Apple iOS все еще ручная, и большинство пользователей даже не знают о существовании этой функции.

Если вы хотите активировать этот баннер A2HS, вам нужно будет выполнить пользовательское событие JavaScript и открыть пользовательскоеHTML-баннер A2HS, чтобы «направлять» своих пользователей о том, как добавить сайт на домашний экран.

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

Вы можете использовать BeforeInstallPrompt для этого.И предупредить пользователя о добавлении нового PWA.Критерии BeforeInstallPrompt включают следующее:

  • Веб-приложение еще не установлено
  • Соответствует эвристике взаимодействия с пользователем (в настоящее время пользователь взаимодействует с доменом не менее 30 секунд).
  • Соответствует критериям прогрессивного веб-приложения
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...