Какие функции имеют прогрессивные веб-приложения против собственных приложений и наоборот, на Android [закрыто]

в 2015 году Google представила новый подход к разработке веб-приложений для Android: прогрессивные веб-приложения. Можно создать приложение, которое будет выглядеть как родное приложение, сможет использовать аппаратные средства устройства, такие как камера и акселерометры, получать push-уведомления, иметь значок запуска, работать в автономном режиме, хранить локальные данные и т. д.

на Android, какие функции обеспечивают собственные приложения, что прогрессивные веб-приложения не поддерживают, и наоборот.

2 ответов


TL; DR - по состоянию на февраль 2017 года прогрессивные веб-приложения являются достаточно мощной платформой, которая Twitter переместил весь свой мобильный веб-трафик в React PWA.

по состоянию на август 2016, прогрессивные веб-приложения фактически предлагают больше аппаратного доступа, чем обычно думают. Вот скриншот whatwebcando.сегодня из моего Chrome 52 стабильный на Android:

What Web Can Do Today - Chrome 52 on Android

доступ к оборудованию включает

предстоящий доступ к оборудованию

эти функции реализуются или уже работают в некоторых браузерах:

еще один важный момент, чтобы отметить, что Origin Trials рамки ( реализовано в Chrome) позволяет изготовителям подвергнуть действию и испытать возможности оборудования (или программного обеспечения) без пойти через процесс стандартизации. Например, телефон maker может предоставить API для чтения значений датчика давления, уточнить его, а затем представить его на рассмотрение W3C.

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

традиционно родные черты, что Ппсо также можете использовать

эти особенности охватывают множество вариантов использования, и многих популярных приложений в наше время может быть переписано как Ппсо. Возьмем, к примеру, Slack. Его альтернатива с открытым исходным кодом,.

Native-подобные функции, поступающие в PWAs

родной Android Особенности пока недоступна ППСО

  • доступ к датчику отпечатков пальцев (в разработке)
  • контакты, календарь и доступ к закладкам браузера (отсутствие доступа к ним можно рассматривать как характеристика пользователями, осознающими конфиденциальность)
  • сигнализация
  • особенности телефонии-перехватывать SMSes или звонки, отправлять SMS/MMS, получить номер телефона пользователя, читать голосовую почту, совершать телефонные звонки без диалога дозвона
  • низкоуровневый доступ к некоторым аппаратным функциям и датчикам: фонарик, датчик атмосферного давления
  • доступ к системе: управление задачами, изменение системных настроек, журналы

прогрессивные веб-приложения предлагают функции, которых не хватает родным приложениям

  • поиска - контент в прогрессивных веб-приложениях можно легко найти поисковыми системами, но контент-ориентированное родное приложение, такое как StackOverflow, не будет отображаться среди результатов поиска app store для контента, который он предоставляет доступ к, например, "веб-клиента Project и родной". Это проблема для таких сообществ, как Reddit, которые не могут выставлять свои многочисленные суб-сообщества в app store как отдельные "приложения".
  • linkability - любая страница / экран может иметь прямую ссылку, которую можно легко разделить
  • bookmarkability - сохраните эту ссылку, чтобы получить доступ к просмотру приложения напрямую
  • всегда свежий - нет необходимости проходить через приложение магазины, чтобы нажать обновления
  • Универсальный доступ - не подлежит App stores иногда произвольным политики или (непреднамеренные) географические ограничения
  • большие сбережения данных, чрезвычайно важно на развивающихся рынках с дорогим и / или медленным доступом в интернет. Например, сайт электронной коммерции Konga сократить использование данных на 92% для первой загрузки путем перехода на ПВА.
  • низкое трение распределения - если ваше прогрессивное веб-приложение онлайн, оно уже доступно для Android (и других мобильных) пользователей.

Конечная нота: Ппсо работать с той же базой, на рабочем столе, а также на большинстве мобильных устройств. В настольных средах (ChromeOS и позже Mac и Windows), они запускаются так же, как и другие приложения, и запускаются в обычном окне приложения (без вкладки браузера).


главным преимуществом для собственных приложений является то, что они могут получить доступ ко всем родным API, которые может предложить платформа (контакты, вспышка камеры, SMS, Телефония, сеть, bluetooth, датчики, необработанные сокеты...) в то время как прогрессивное веб-приложение не может (пока), поскольку они ограничены стандартными веб-возможностями.

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

  • реагировать на любой форм-фактор
  • независимое подключение: прогрессивно-улучшено с помощью сервисных работников, чтобы они могли работать в автономном режиме
  • App-like-interactions: примите модель приложения Shell + Content для создания навигации и взаимодействия appy
  • свежий: прозрачно всегда в актуальном состоянии спасибо к процессу обновления Service Worker
  • Safe: подается через TLS (требование работника службы), чтобы предотвратить snooping
  • Discoverable: идентифицируются как" приложения " благодаря манифестам W3C и области регистрации работника службы, позволяющей поисковым системам находить их
  • Re-engageable: может получить доступ к UIS повторного включения ОС; например, Push-уведомления
  • Installable: к домашнему экрану через браузер-обеспеченные подсказки, позволяющ потребителям к "держите" приложения, которые они находят наиболее полезными без хлопот app store
  • Чт: т. е. с нулевым трением, без установки, и легко поделиться. Социальная сила URLs имеет значение.

из этих пунктов, linkable была одной из первых характеристик, импортированных собственными приложениями из открытого интернета в виде мобильная глубокая связь.

но особого упоминания заслуживают комбинированные свежие + установки поскольку он представляет собой одно из основных преимуществ интернета Как платформы над уроженца альтернативы. Вот!--29-->установки означает, что он появляется на главном экране. Это не означает, что вам необходимо пройти этапы загрузки и установки. Вы открыть URL или открыть сервис при просмотре и дело сделано: он появляется на главном экране.

свежие относится к тому, как работает обычный веб, предлагая мгновенную загрузку и бесшовные обновления. Вас не просят установить обновление из интернета YouTube, оно развернуто, и вы потребляете его при следующем посещении.

Я не говорю о преимуществах оставшихся точек, потому что вы просили различия и, например, повторное участие-это то, что родные приложения уже имеют через push-сервисы и уведомления, и теперь веб-приложения догнали.

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

в качестве финальной ноты, я рекомендую вам просмотреть www.flipkart.com с мобильного с хром. Это довольно удивительно: нет ошибок, плавная навигация, приложение-как чувство. GO offline и он будет продолжать работать. Действительно реальный пример этого поста. Добавьте приложение на главный экран, и в следующий раз, когда вы его откроете, опыт еще лучше.

вы можете взглянуть на Firefox OS а также пример приведения больше API платформы к стандартной сети (с более или менее успехом).