Подскажите не работает второй раз, пытаясь добавить веб-приложение на главном экране - PullRequest
0 голосов
/ 07 мая 2018

Попытка добавить веб-приложение на главном экране в браузере Chrome, оно работает правильно при первом обращении, но не работает во второй раз, что означает отсутствие запроса на сообщение:

Ниже мой код:

  1. создан действительный манифест json

  2. включает файл манифеста в index.html

  3. и создан service-worker.js

    self.addEventListener('fetch', function(event) {
          event.respondWith(
            caches.match(event.request).then(function(response) {
              if (response) {
                return response;
              }          
              return fetch(event.request).then(function(response) {
                return response;
              }).catch(function(error) {
                throw error;
              });
            })
          );
        });
    
  4. регистрация сервисного работника на html-странице

    if ('serviceWorker' in navigator) {
        console.log("Will the service worker register?");
        navigator.serviceWorker.register('service-worker.js')
          .then(function(reg){
            console.log("Yes, it did.");
          }).catch(function(err) {
            console.log("No it didn't. This happened: ", err)
          });
      }
    

Сценарий:

  1. в первый раз, когда я захожу на веб-страницу, она показывает приглашение на добавление экрана

  2. добавлено на главном экране

  3. удалить страницу начального экрана

  4. я попытался снова зайти на веб-страницу, на экране не отображается приглашение на добавление экрана

1 Ответ

0 голосов
/ 09 мая 2018

Значок на главном экране - это просто ярлык браузера Chrome с добавленными вариантами (полный экран, заставка, ориентация и т. Д.). Технически, вы просто удалили ярлык, а не приложение.

Если вы нажмете значок шашлыка> значок информации> Настройки сайта, вы увидите, что Chrome все еще сохранил его на устройстве. Единственный способ действительно удалить / удалить это, нажав на кнопку «Очистить и сбросить», что заставит chrome думать, что сайт посещают в первый раз.

Я думаю, что "проблема" была бы хорошей функцией для команды chrome для реализации в браузере. При «удалении» PWA также очищается и сбрасывается.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...