Blog

Głodny wiedzy? Na evoBlogu czekają artykuły napisane przez naszych specjalistów.

Czym są aplikacje PWA? Poznaj ich możliwości.

Na początku Microsoft próbował zrewolucjonizować aplikacje na Windows za pomocą platformy UWP, potem zakochał się w technologii Google’a. Dowiedz się, czym są aplikacje PWA i jakie dają możliwości.

Co to jest PWA?

PWA (Progressive Web Application) jest rodzajem aplikacji webowej, która, dzięki swym cechom, dostarcza użytkownikom wrażeń korzystania z aplikacji mobilnej. Łączy w sobie zalety obu wspomnianych rodzajów oprogramowania. Dzięki temu użytkownicy mogą korzystać z funkcjonalności zbliżonej do natywnej, bez konieczności pobierania czegokolwiek z Google Play lub App Store.

Liczne przykłady pokazują większe zaangażowanie użytkowników i konwersję, w porównaniu do aplikacji mobilnych, przy jednocześnie znacznie niższym koszcie rozwoju i utrzymania PWA.

Biorąc pod uwagę skalę ruchu w internecie, który pochodzi z urządzeń mobilnych, oraz rosnącą niechęć użytkowników do pobierania kolejnych aplikacji, technologia PWA jest wartą uwagi alternatywą. Jest to główna przyczyna jej stale rosnącej popularności. Nie jest to przypadek, że z tego rozwiązania korzystają największe przedsiębiorstwa globalne – m.in. Twitter, Pinterest, Aliexpress, YouTube, czy Uber.

Mimo że PWA jest obecnie kojarzona głównie z urządzeniami mobilnymi, ma znacznie szersze zastosowanie. Potencjał technologii wprowadzonej przez Google dostrzegł również Microsoft, który dołączył do jej rozwoju. Dzięki temu możliwe jest wykorzystanie PWA także na urządzeniach działających pod kontrolą Windows.

Poznaj tajniki działania PWA

Głównymi zadaniami aplikacji PWA jest zwiększenie wygody korzystania z programu i szybkości jego działania. Po pierwszym wczytaniu danych, zawartość zapisywana jest w pamięci podręcznej urządzenia, co pozwala znacznie skrócić czas kolejnego ładowania.

Płynność interfejsu użytkownika porównywalna jest do aplikacji natywnych. Wrażenie to potęguje uruchomienie zainstalowanej aplikacji w trybie „standalone”, z ukrytym paskiem adresu. Uruchomienie aplikacji PWA jest równie proste jak włączenie każdego innego programu – wystarczy kliknąć dedykowaną ikonkę przypiętą na ekranie głównym urządzenia.

Dużym plusem aplikacji PWA jest możliwość działania w trybie offline – do ich uruchomienia nie jest koniecznie połączenie z internetem. W porównaniu do zwykłych aplikacji webowych, daje to znacznie większe możliwości.

Bardzo ważną cechą, odróżniającą rozwiązania oparte o PWA od „standardowych” aplikacji webowych, jest opcja działania w tle, pozwalająca np. synchronizować dane lub obsługiwać powiadomienia push.

Instalacja PWA może odbywać się bezpośrednio z poziomu przeglądarki internetowej za pomocą opcji dostępnych w menu. Niektóre urządzenia – na przykład Android – udostępniają możliwość wyświetlenia użytkownikowi komunikatu zachęcającego do pobrania aplikacji, co jeszcze bardziej ułatwia jej instalację.

PWA – ocean możliwości?

Omawiana technologia zwiększa potencjał aplikacji webowych, dzięki udostępnianym funkcjom, które wcześniej zarezerwowane były tylko dla aplikacji natywnych.

Katalog możliwości PWA stale się rozszerza. Ponadto, funkcjonalność dostępna dla danego urządzenia, w dużej mierze zależy od systemu operacyjnego oraz przeglądarki internetowej. Najwięcej funkcji udostępniają produkty Google i Microsoft, a najmniej Apple.

Rozwój PWA wpisuje się w strategię progresywnego ulepszania (progressive enhancement), czyli udostępniania użytkownikom takich funkcji, które są wspierane przez dane urządzenie. Realizowane jest to poprzez projektowanie rozwiązań wykorzystujących w 100% możliwości danej technologii, które równocześnie nie ograniczają użytkowników korzystających z urządzeń niewspierających wszystkich dostępnych opcji.

Do najważniejszych z opcji PWA, oprócz wspomnianego już działania w tle, należy choćby dostęp offline, powiadomienia push, prosta instalacja bezpośrednio z poziomu przeglądarki, czy bardzo wysoki poziom bezpieczeństwa.

Dostępnych opcji jest jednak znacznie więcej i ciągle udostępniane są nowe funkcje. Możesz to śledzić na bieżąco, m.in. za pomocą serwisu https://whatwebcando.today/.

Ograniczenia, których musisz być świadomy

Aplikacje PWA mają także swoje ograniczenia. Ponieważ są to aplikacje webowe, a nie natywne, nie mają dostępu do niektórych funkcji urządzenia (jak np. wysyłka SMS/MMS). Warto jednak zaznaczyć, że liczba dostępnych funkcji cały czas się powiększa.

Największe ograniczenia mają obecnie urządzenia marki Apple. PWA jest dostępne dla iOS od wersji 11.3, jednak posiada mniejsze możliwości niż urządzenia bazujące na systemie Android. Główną różnicą jest brak obsługi powiadomień push oraz brak możliwości wyświetlenia komunikatu informującego o opcji dodania skrótu do ekranu głównego. Różnice te znacząco wpływają na wygodę i tempo instalacji.

Warto jednak spojrzeć na temat w szerszym zakresie. Apple definiuje minimalne wymagania, które musi spełniać aplikacja natywna, aby była opublikowana w App Store 
(https://developer.apple.com/app-store/review/guidelines/#minimum-functionality). Jeżeli aplikacja oferuje funkcjonalność możliwą do zrealizowania za pomocą strony internetowej, może zostać przez App Store odrzucona. W takim przypadku PWA stanowi ciekawą alternatywę.

Zalety i wady

Technologia PWA dostarcza korzyści istotnych zarówno z punktu widzenia użytkownika danej aplikacji, jak i osób zaangażowanych w realizację projektu. Oczywiście, nie jest także pozbawiona wad. Poniżej znajduje się zestawienie najważniejszych jej cech.

Brak konieczności wyszukiwania i pobierania z Google Play, czy App Store – instalacja odbywa się w prosty sposób, bezpośrednio z poziomu przeglądarki internetowej.

Możliwość działania w trybie offline i przy słabszym połączeniu internetowym.

Oszczędność danych – aplikacje PWA są zazwyczaj znacznie mniejsze niż ich natywne odpowiedniki.

Krótszy czas ładowania ze względu na wykorzystanie w szerokim zakresie pamięci podręcznej urządzenia.

Nie wymaga aktualizacji przez użytkownika – wszelkie aktualizacje odbywają się tylko na serwerze.

Niższy koszt realizacji – wytworzenie i utrzymanie aplikacji PWA jest znacznie tańsze i szybsze, niż w przypadku aplikacji natywnych z tego względu, że nie ma konieczności zatrudniania osobnych zespołów programistycznych tworzących programy na różne systemy operacyjne (Android i iOS) – jest wspólny kod bazowy

Brak różnic w wyglądzie pomiędzy poszczególnymi systemami.

Wzrost konwersji użytkowników, spowodowany szybszym ładowaniem się treści, oraz mniejszy współczynnik odrzuceń.

Brak dostępu do części funkcji, w porównaniu do aplikacji natywnych.

Większe zużycie baterii.

Mniejsza wydajność obliczeniowa.

Niepełna implementacja technologii na urządzeniach z iOS (brak powiadomień push oraz brak możliwości wyświetlenia systemowego komunikatu zachęcającego do instalacji).

Jakie cechy musi posiadać aplikacja PWA?

Aby działać jako PWA, aplikacja webowa musi spełniać określone warunki i implementować szereg rozwiązań technicznych.

Konieczne jest wdrożenie Service Worker, który jest najważniejszym elementem aplikacji PWA. Jest to kod JavaScript, działający w osobnym wątku, niezależnie od głównego okna wyświetlającego daną stronę. Stanowi warstwę pośrednią, pomiędzy przeglądarką a internetem.

Service Worker działa w pełni asynchronicznie i dostarcza rozwiązania umożliwiające działanie offline, odbiór powiadomień, kontrolowanie zapytań sieciowych, obsługę cache i wiele innych. Prawidłowa implementacja zapewnia użytkownikom wysokiej jakości produkty, które, w większości przypadków, nie odbiegają funkcjonalnością od aplikacji natywnych.

W technologii PWA dużą wagę przywiązuje się do kwestii bezpieczeństwa, dlatego wymogiem jest korzystanie z szyfrowanego połączenia (protokół https).

Aplikacje PWA muszą być także responsywne, czyli prawidłowo działać na wszystkich urządzeniach, ze szczególnym uwzględnieniem dostosowywania layoutu do rozdzielczości danego ekranu. Istotna jest także niezależność od sieci, co zapewnia działanie zarówno online, jak i offline. Nie można też zapomnieć o indeksowalności, od której zależna jest dostępność treści w wyszukiwarkach internetowych.

Warunkiem koniecznym jest także przygotowanie pliku manifest.json, który definiuje metadane przydatne m.in. podczas instalowania aplikacji na urządzeniu (np. nazwę, ikonkę, tryb pracy, itp.).

Aplikacje PWA – czy warto?

Mimo że aplikacje PWA mają pewne ograniczenia, lista ich zalet jest oszałamiająca. Stały rozwój tej technologii i ciągle powiększający się zakres funkcji, codziennie tworzy nowe możliwości. Jeśli potrzebujesz wsparcia przy stworzeniu aplikacji PWA, w EvoLabs chętnie pomożemy Ci przy tym projekcie.

Rozważasz implementację PWA w swoim projekcie? Zdobądź istotne wskazówki od doświadczonego analityka biznesowego przed rozpoczęciem. Skorzystaj z darmowej konsultacji z naszymi ekspertami, aby dokładnie omówić dowolny aspekt planowanego rozwiązania.

{Również może Ci się spodobać}