Czym są aplikacje PWA rozwijane przez Google oraz Microsoft?

Google w 2015 roku rozpoczął prace nad aplikacjami PWA (Progressive Web App), które w niedalekiej przyszłości mogą zacząć zastępować aplikacje, z których korzystamy obecnie. Microsoft również dostrzega w tym rozwiązaniu potencjał i dlatego dołączył do Google, aby wspólnie rozwijać ten standard. Firma Apple nie pozostaje obojętna, choć zapewne nie podejmie tak bliskiej współpracy jak Google i Microsoft. Czym są aplikacje PWA i jakie płyną z tego korzyści?

Użytkownicy cenią aplikacje ponieważ można je szybko uruchamiać bezpośrednio z ekranu startowego, często nie muszą posiadać połączenia z Internetem oraz dostarczają dodatkowych możliwości takich jak powiadomienia push. Do niedawna takie możliwości posiadały wyłącznie natywne aplikacje. Aplikacje PWA oferują takie same możliwości. Progressive Web Application to aplikacja webowa (HTML + CSS + JS), która musi spełniać kilka wytycznych:

  • Protokół HTTPS. Strona musi być oferowana jako HTTPS.
  • Responsive Web Design. Wygląd i układ strony musi automatycznie dopasowywać się do wielkości wyświetlacza oraz rozdzielczości danego urządzenia.
  • Działanie offline. Aplikacja musi się uruchamiać nawet wtedy, kiedy nie ma połączenia z Internetem. Może to być ekran informujący o konieczności nawiązania połączenia.
  • Ekran startowy. Aplikacja musi posiadać możliwość przypięcia do ekranu startowego.
  • Szybkość ładowania. Aplikacja musi się szybko ładować nawet przy połączeniach typu 3G.
  • Działanie we wszystkich przeglądarkach. Aplikacja musi poprawnie działać w przeglądarkach Chrome, Edge, Firefox oraz Safari.
  • Reactive. Aplikacja musi szybko reagować na akcje użytkownika takie jak np. przełączanie ekranów.
  • Adres URL. Każda strona aplikacji powinna mieć swój własny adres URL.

Android oraz Windows 10 traktują aplikacje PWA jako natywne aplikacje systemowe. Aplikacje te mogą mieć ikony, wyświetlać się w pełnym ekranie bez paska adresowego, należy je instalować i mają działać szybko i bez potrzeby stałego połączenia z Internetem. Zastosowanie wszystkich powyższych wymagań spowoduje, że użytkownik nie będzie wiedział, że korzysta z aplikacji PWA. Jej działanie, wygląd, reakcje na akcje użytkownika nie powinny w żaden sposób zdradzać, że mamy do czynienia z internetową aplikacją.

W niedługim czasie deweloperzy będą mogli stworzyć jedną aplikację, która zadziała na każdym systemie. Jeden kod źródłowy dla wszystkich systemów to z pewnością spełnienie marzeń nie tylko deweloperów, ale również firmy Microsoft, która nie będzie musiała się dłużej borykać z pustkami w sklepie. Obecnie deweloperzy musza tworzyć osobne aplikacje dla każdego systemu a następnie aktualizować każdą aplikację z osobna. PWA rozwiązuje ten problem. Jedna aplikacja i jednoczesne aktualizacje dla wszystkich urządzeń. Jest spora szansa, że tego typu aplikacje zdominują rynek w ciągu kilku lat a wtedy sklepy poszczególnych producentów stracą na znaczeniu. W takim wypadku użytkownik zdecyduje się na urządzenie, które będzie posiadało najwięcej dodatkowych funkcji i możliwości nie patrząc na zawartość danego sklepu.

Należy jednak wspomnieć, że aplikacje PWA posiadają na ten moment pewne ograniczenia względem natywnych aplikacji i dlatego nie są w stanie w pełni z nimi konkurować. Co prawda z roku na rok dodawane są nowe możliwości, ale przed PWA jeszcze długa droga. Poza tym czy firmie Google zależy na tym, aby zniechęcić użytkowników do korzystania ze sklepu Google Play umożliwiając instalację aplikacji PWA spoza sklepu? Musimy poczekać na rozwój aplikacji internetowych oraz obserwować dalsze zaangażowanie największych graczy na rynku w Progressive Web Apps.

editAktualizacja godz. 14:30

Windows 10 zacznie traktować strony PWA jako natywne aplikacje wraz z rozgałęzieniem Redstone 4. Aplikacje PWA w systemie Windows będą obsługiwały funkcje UWP takie jak integracja z asystentką głosową Cortana, powiadomienia, dynamiczne kafelki i wiele więcej. Dystrybucja aplikacji będzie się odbywała również przez sklep Microsoft Store i podobnie jak w przypadku systemu Android nie będziemy w stanie odróżnić aplikacji PWA od natywnych aplikacji.

Źródło: Sunscrapers, WindowsCentral, Google, IN’SANE LABS