Как стать автором
Обновить

Комментарии 8

Приветствую! Из вашей статьи заинтересовало вот что, доступ к микрофону и камере, но ведь это вроде бы доступно и из обычного браузера, в том числе по WebRTC и WebAudio? И еще вопрос по работе в офлайн... вроде же и обычную html страницу можно просматривать офлайн и javascrpt может работать офлайн, в том же Fiirefox есть в меню file-.save as и можно сохранить полностью страницу, а потом просматривать ее офлайн. Правда этому будет слегка мешать CORS. И еще вопрос - как в PWA с CORS проблему решают с локальными файлами? И есть ли доступ к локальной файловой системе? Ведь из обычного html такой доступ есть через запрос разрешения у пользователя.

Приветствую! Из вашей статьи заинтересовало вот что, доступ к микрофону и камере, но ведь это вроде бы доступно и из обычного браузера, в том числе по WebRTC и WebAudio?

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

И еще вопрос по работе в офлайн... вроде же и обычную html страницу можно просматривать офлайн и javascrpt может работать офлайн, в том же Fiirefox есть в меню file-.save as и можно сохранить полностью страницу, а потом просматривать ее офлайн. Правда этому будет слегка мешать CORS.

Это совсем разные режимы. Брать файлы из Cache Storage (куда есть доступ из приложения) и брать файлы из файловой папки с кэшем (куда нет доступа) совсем разные вещи. Смысл оффлайн работы приложения в контроле не только файлов, но и обычных REST-запросов, например в кэш можно положить JSON и пользоваться им в любой момент без интернета.

И еще вопрос - как в PWA с CORS проблему решают с локальными файлами? И есть ли доступ к локальной файловой системе? Ведь из обычного html такой доступ есть через запрос разрешения у пользователя.

Доступ к локальным файлам не используется. Посмотрите как происходит доступ к кэшу через service-worker и cache storage. Доступ к файловой системе это совсем другой, на текущий момент технология экспериментальная https://developer.mozilla.org/en-US/docs/Web/API/File_System_Access_API но частью браузеров уже поддерживается.

У непросвещённого читателя сразу возникают 4 вопроса. Потому что он пытается понять насколько PWA идут против ограничений мобильных ОС. Естественно, без хождения по ссылкам.

Может ли установленное PWA быть совсем не похоже на сайт с которого его установили, например, сайт продаёт носки а PWA играет в крестики-нолики?

Может ли PWA запросить у пользователя JavaScript, запомнить его и выполнять?

Может ли PWA содержать WebAssembly и насколько она хороша - возможен ли в ней запуск нескольких потоков ОС и может ли PWA получить файл WebAssembly от другого приложения?

Откуда брать сертификат чтобы установить на свой телефон своё PWA?

Может ли установленное PWA быть совсем не похоже на сайт с которого его установили, например, сайт продаёт носки а PWA играет в крестики-нолики?

Да, может. Что было проще поддерживать разный код pwa и сайта, то можно вынести в отдельный поддомен, например pwa.mysite.com

Может ли PWA запросить у пользователя JavaScript, запомнить его и выполнять?

Что значит запросить у пользователя JavaScript? Под запоминанием имеется ввиду Cache Storage?

Может ли PWA содержать WebAssembly и насколько она хороша - возможен ли в ней запуск нескольких потоков ОС и может ли PWA получить файл WebAssembly от другого приложения?

Не подскажу, с WebAssembly знаком весьма поверхностно. Кажется что всё возможно https://docs.microsoft.com/ru-ru/aspnet/core/blazor/progressive-web-app?view=aspnetcore-6.0&tabs=visual-studio

Откуда брать сертификат чтобы установить на свой телефон своё PWA?

PWA должно располагаться на отдельном домене с https протоколом. Откуда будет SSL уже не так важно, главное чтобы он был валиден.

Спасибо. Про JavaScript имелось в виду буквально, например как Sheets - спросило JavaScript и пользует. Как запоминать - не имею понятия, например у установленного PWA есть возможность очистить кэш, как у родного Андроид приложения? Если есть, то должно бы запоминать так, чтобы при очистке кэша не забыло. Но это уже детали другого уровня.

Все равно вопрос не до конца понял)

у установленного PWA есть возможность очистить кэш, как у родного Андроид приложения?

Да, кеш под полным контролем разработчика. В библиотеке workbox удобно использовать готовые и различные стратегии кеширования https://developer.chrome.com/docs/workbox/caching-strategies-overview/

Подскажите как разбирающийся человек в теме. Завезли ли Push в PWA на iOS? Пару лет назад когда делал небольой проект на фрилансе с этим направлением была беда.

Да, подвижки есть, хотя бы сдвинулось с мертвой точки, самые свежие новости здесь https://t.me/pwa_ru

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории