Мне было интересно, каково решение прогрессивного веб-приложения для устройств IOS, поскольку их браузер по умолчанию SAFARI еще не поддерживает прогрессивные веб-приложения. Какая же тогда альтернатива для аналогов IOS?
Что такое прогрессивное веб-приложение для iOS
Ответы (2)
Имейте в виду, что «браузеры, поддерживающие прогрессивные веб-приложения» - это не настоящий термин, сам PWA - это набор функций, которые веб-приложение может предоставить пользователям. Так что дело не только в Service Worker и App Manifest.
Ознакомьтесь с: контрольным списком базового уровня PWA.
Вот что вы можете сделать для достижения PWA в iOS / Safari на момент создания этого ответа:
- Сайт обслуживается по HTTPS ✅
- Страницы адаптируются на планшетах и мобильных устройствах ✅
- Стартовый URL (по крайней мере) загружается в автономном режиме ????
- Метаданные, предоставленные для добавления на главный экран ✅❗️
- Первая загрузка быстрая даже по 3G ✅
- Сайт работает кроссбраузерно ✅
- Переходы между страницами не ощущаются так, как будто они блокируются в сети ✅
- У каждой страницы есть URL ✅
Как видите, почти все работает, даже если ваша страница не может работать в автономном режиме в iOS / Safari, все равно есть огромное преимущество «обновления» вашего веб-приложения до PWA.
На самом деле вам нужно не причудливое название «Прогрессивные веб-приложения», а хорошее веб-приложение, обеспечивающее удобство работы и функции для пользователей. Это путешествие, в котором вы можете пройти каждую маленькую часть, поэтому оно называется «Прогрессивным».
Примечание о «Добавить на главный экран: Safari имеет собственную спецификацию для« значка главного экрана », который называется apple-mobile-web-app-capable
в метатегах. Генератор манифестов веб-приложений имеет запасной вариант для iOS, использующий эти метатеги.
ИЗМЕНИТЬ 3:
Сервис-воркеры выпустили Safari для iOS 30 марта 2018 года!
ИЗМЕНИТЬ 2:
Разработчик Apple по имени Рики Монделло написал об этом в Твиттере 24 января 2018 года:
https://twitter.com/rmondello/status/956256845311590400
«iOS 11.3 и macOS 10.13.4 включают Service Workers - мощную спецификацию, которая позволяет фоновым сценариям использовать автономные веб-приложения. iOS 11.3 также обращается к манифесту веб-приложений при добавлении веб-приложений на главный экран».
Потрясающий!
О push-уведомлениях пока нет, но все же отличные новости.
РЕДАКТИРОВАТЬ:
Я написал статью, обращаясь к Apple по этой теме:
Он был опубликован в хакерских новостях и получил хорошую поддержку в Твиттере. Через неделю на нем начали разработку. Так что - следите за обновлениями, похоже, он наконец-то в пути!
ОРИГИНАЛЬНЫЙ ОТВЕТ:
«Так что дело не только в Service Worker и App Manifest».
На мой взгляд, это именно то, что действительно представляет собой PWA - сервис-воркер. Это то, что позволяет вам делать все замечательные вещи, которые делают возможными PWA. Базовый план можно было выполнить уже давно, и хотя Google технически установил его как базовую классификацию, это не то, что на самом деле делает PWA тем, чем он является. В остальном это просто обычное адаптивное веб-приложение из моей книги.
Вот список вещей, которые вы по-прежнему не можете делать с мобильным сафари из-за отказа Apple их поддерживать (потому что они потеряют деньги в магазине приложений):
- Создайте экран загрузки приложения
- Использовать push-уведомления
- Добавить офлайн-поддержку
- Создайте начальный пользовательский интерфейс приложения для мгновенной загрузки
- Быстрая установка на главный экран с помощью диалогового окна браузера
Принятый ответ действительно рисует здесь неверную картину. Я довел яблочный «родной» опыт в мобильном сафари до предела, и это все еще очень плохо. У меня было множество проблем с полноэкранным режимом мобильного сафари, и Apple их просто не волнует. С ним обращаются как с гражданином второго сорта, потому что он не приносит денег, как магазин приложений.
Вы заметите, что если вы добавите новый и потрясающий мобильный сайт Twitter на основе реакции / сокращения на свой домашний экран в iOS, он не откроется в полноэкранном режиме. Я подозреваю, что это происходит по тем же причинам, что и я, - множество ошибок, и никто из команды Apple не работает над ними.
Экран загрузки, который когда-то был возможен в полноэкранном режиме iOS, который был доступен в манифесте веб-приложения, загадочным образом перестал работать, без каких-либо комментариев со стороны Apple на их форумах к сообщениям по этой теме. И необходимость говорить пользователям: «О, эй, просто нажмите« Поделиться », а затем перейдите к« Добавить на главный экран »» - ужасный способ действовать.
Это печальное положение дел. Список в текущем принятом ответе действительно должен называться «Базовый список адаптивных веб-приложений».
И ответить здесь на вопрос - нет, альтернативы нет и ничего не поделаешь. Вы должны сыграть в игру Apple, заплатить 100 долларов, чтобы получить доступ к магазину приложений, выучить совершенно другой и более сложный язык программирования и сохранить совершенно отдельную базу кода.
Я только что потратил 6 месяцев на изучение React Native для клиентского проекта, и это было потрясающе. Я очень рекомендую это. Вы можете создавать действительно нативные приложения с помощью JavaScript и делиться своей кодовой базой между iOS и Android.
Чтобы было ясно, я не против Apple. Я использую iPhone и занимаюсь разработкой на Mac. Но этот аспект их бизнес-стратегии, безусловно, позор.