Почему мой PWA не использует сервисных работников, когда он запускается с домашнего экрана? - PullRequest
0 голосов
/ 17 мая 2018

Я обновляю свое приложение с AppCache до сервисных работников через рабочий ящик Google.

Результаты:

  • Chrome

    • настройка теста: devtools
    • примечания: работает отлично, не тестировал с хромом на андроиде
  • iPhone:

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

    • открыть с домашнего экрана: то же самое собственное всплывающее предупреждение о том, что страница не может быть загружена из-за недоступности сети. Приложение не загружается в фоновом режиме.

Когда я подключаюсь к сети и загружаю приложение с домашнего экрана, он попадает на мой сервер, чтобы получить sw.js и предварительный кэш-манифест, но не захватывает другие ресурсы и , он загружается хорошо.

Итак, почему я больше не могу запустить свое приложение в автономном режиме, когда я запускаю его с домашнего экрана? Это ошибка для сервисных работников, и я должен вернуться к App Cache, или кто-то еще заставил это работать?

Спасибо!

Дальнейшая отладка:

Я подключил devtools Safari к своему iPhone и теперь вижу в консоли следующее:

[Error] Failed to load resource: The Internet connection appears to be offline. (precache-manifest.74ba0448495d9599f20233bb79d47c66.js, line 0)
[Error] Failed to load resource: The Internet connection appears to be offline. (sw.js, line 0)

Итак, он безуспешно пытается загрузить сервисного работника, и это требует предварительного кеширования.

У меня есть другое приложение, которое все еще использует AppCache, и оно показывает аналогичную ошибку, связанную с невозможностью загрузить sw.js, но оно полностью используется (я даже могу запустить его с домашнего экрана, когда мой телефон находится в режиме полета). .

...