Как запомнить отрицательное решение пользователя на событии beforeinstallprompt при установке PWA? - PullRequest
0 голосов
/ 18 февраля 2019

Я только что внес изменения, чтобы Chrome распознал мое веб-приложение как прогрессивное веб-приложение.Я следовал официальному руководству на сайте разработчиков Chrome:

https://developers.google.com/web/fundamentals/app-install-banners/?hl=es

Итак, у меня есть:

var deferredPrompt;
window.addEventListener('beforeinstallprompt', function(e) {
// Prevent Chrome 67 and earlier from automatically showing the prompt
if (!/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera 
Mini/i.test(navigator.userAgent)) {
    e.preventDefault();
    $("#modalInstallPWA").modal('show');
} // Stash the event so it can be triggered later.


deferredPrompt = e;
}); // Installation must be done by a user gesture! Here, the button click

$("#btn-install-pwa").on('click', function() {
// Show the prompt
deferredPrompt.prompt(); // Wait for the user to respond to the prompt

deferredPrompt.userChoice.then(function(choiceResult) {
    console.log(choiceResult.outcome);

    if (choiceResult.outcome === 'accepted') {
        console.log('User accepted the A2HS prompt');
    } else {
        console.log('User dismissed the A2HS prompt');
    }

    deferredPrompt = null;
});
});

Итак, я хотел бы запомнить решение пользователя, чтобыChrome не просит пользователя снова и снова устанавливать PWA.Это хорошо работает, когда пользователь решил установить PWA, но не в том случае, если пользователь решил не устанавливать его.

Я подумал об этом, используя cookie, но я хотел знать, если естьвстроенная функция или более простой способ добиться этого.

...