Пределы прогрессивных веб-приложений: превращение нативного приложения в прогрессивное веб-приложение - PullRequest
0 голосов
/ 22 января 2019

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

Основная причина разработки PWA заключается в его автономной функциональности и в том, что он будет доступен на любом устройстве (смартфоне, планшете, настольном компьютере).

Нативное приложение:

Приложение предназначено для предоставления клиентам новостей, статей и различных продуктов. Каждый покупатель (пользователь) имеет свой профиль и может видеть только определенные продукты. Каждый продукт имеет как минимум одну картинку и как минимум столько же документов для скачивания.

Вопрос:

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

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

Какое реалистичное количество контента будет доступно в автономном режиме?

Когда преобразование нативного приложения в pwa может стать проблематичным?

1 Ответ

0 голосов
/ 22 января 2019

Похоже, что вашим главным узким местом будет автономное хранилище. Ограничения состоят из двух вещей: объем данных, которые вы можете хранить, и постоянство.

Что касается суммы, на данный момент действуют следующие ограничения:

  • Chrome <6% свободного места </li>
  • Firefox <10% свободного места </li>
  • Safari <50 МБ </li>
  • IE10 <250 МБ </li>
  • Edge Зависит от размера тома

https://developers.google.com/web/fundamentals/instant-and-offline/web-storage/offline-for-pwa (Проверьте также раздел ниже: текущая и будущая работа автономного хранилища)

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

Что касается постоянства, обработка не одинакова на разных платформах, но обычно нечеткая. В то время как chrome вы можете запросить постоянное хранилище (очистить хранилище может только пользователь, но не систему), в Safari система через некоторое время может стереть ваше хранилище. https://developers.google.com/web/updates/2016/06/persistent-storage

См. Также: Гарантируется ли постоянство IndexedDB в Safari?

...