Krátka verzia: Čo sú progresívne webové aplikácie?
Tu je rýchly prehľad: Google, Microsoft, Mozilla a ďalšie spoločnosti pracujú na novom, modernom štandarde webových aplikácií. Dokonca aj Apple sleduje a implementuje podporu pre neho. Tieto aplikácie sú webové aplikácie, ale správajú sa viac ako nativné aplikácie. Rovnako ako existujúce webové aplikácie, budú hostované priamo na pridružených webových stránkach. Vývojári ich môžu aktualizovať priamo na svojom webovom serveri bez odosielania týchto aktualizácií do niekoľkých rôznych obchodov s aplikáciami a tá istá aplikácia bude fungovať vo všetkých prehliadačoch a platformách.
Keď nainštalujete progresívnu webovú aplikáciu, dostanete domovskú obrazovku, panel úloh alebo skratku na ploche, ktorá spúšťa aplikáciu (v závislosti od vašej platformy). Aplikácia sa načíta rýchlo a bude obsahovať podporu offline, push notifications, podporu synchronizácie pozadia a ďalšie moderné dobroty.
Tieto aplikácie môžu použiť aj existujúce webové technológie na prístup k službám určovania polohy, vašej webovej kamere a ďalším funkciám, ktoré by sme normálne spájali s natívnymi aplikáciami. Aplikácie sa samozrejme musia opýtať na vás a získať vaše povolenie predtým, ako budete mať prístup k týmto veciam.
Technická verzia: Ako fungujú?
Tieto aplikácie získajú svoje vlastné okno a skratku na paneli úloh (v systéme Windows 10 a čokoľvek so spusteným prehliadačom Chrome) alebo ikonu na domácej obrazovke (na zariadeniach s Androidom a na iných smartphonoch). Keď ich otvoríte, rýchlo sa načítajú vďaka rozhraniam Cache API a IndexedDB, ktoré ukladajú zdroje a dáta aplikácie do zariadenia a umožňujú im pracovať aj vtedy, keď sú offline. Technológie ako servisní pracovníci a upozornenia push umožnia aplikácii vykonávať zálohové úlohy, ako je synchronizácia a odosielanie upozornení aj vtedy, keď sa nespúšťajú, ako je napríklad natívna aplikácia. Aplikácia Fetch API umožňuje aplikácii rýchlejšie a jednoduchšie požadovať údaje. Majú súbor Manifest Web App, ktorý obsahuje meno, ikonu, autora a popis, ktorý sa používa pri inštalácii aplikácie na vašu domovskú obrazovku alebo pracovnú plochu. Vždy sa podávajú prostredníctvom šifrovaného protokolu HTTPS, čo znamená, že sú zabezpečené a údaje nemožno manipulovať pri prenose.
Progresívne webové aplikácie nie sú ako balík Google Chrome Packaged Apps alebo hostiteľské webové aplikácie spoločnosti Microsoft. Tie vyžadovali, aby bola aplikácia "zabalená" ako súbor a odoslaná do obchodu s aplikáciami. Celá aplikácia žila v malom offline zväzku a používatelia ho museli nainštalovať buď z Internetového obchodu Chrome alebo z obchodu Windows Store. Tie boli tiež špecifické pre platformu a fungovali by iba v prehliadači Chrome alebo Windows. Vývojár musel zmeniť súbory aplikácie offline a odoslať novú verziu do obchodu s aplikáciami, aby ju aktualizoval.
Namiesto toho sú PWA nikdy zabalené do súboru offline. Rovnako ako tradičné webové aplikácie, ktoré dnes používame, sú hostované úplne na serveroch aplikácie. Ak chce vývojár aktualizovať svoju progresívnu webovú aplikáciu, aktualizujú ju presne tak, ako by aktualizovali webovú aplikáciu - na svojich serveroch. Všetky platformy a prehliadače, ktoré podporujú PWA, môžu používať tie isté Progressive Web Apps.
PWA môžu byť uvedené v obchodech s aplikáciami pre jednoduchšie vyhľadávanie a inštaláciu, ale úložisko aplikácií bude len smerovať na servery webovej aplikácie. Aj keď aplikácia nie je kompatibilná s pravidlami pre obsah aplikácie v obchode, používatelia ju budú môcť nájsť a nainštalovať priamo z prehliadača.
Prečo je to dôležité
Ak sa napríklad táto práca skončí, spoločnosť Google môže povoliť, aby služby ako Gmail a Kalendár Google fungovali ako PWA. To znamená, že by sa mali spustiť ako aplikácie s natívnym štýlom v systéme Windows 10 a mali byť uvedené v systéme Windows Store. To by znamenalo dlhú cestu k riešeniu problému s aplikáciou Windows Store, keďže spoločnosť Google nechce podporovať univerzálnu platformu Windows (UWP) spoločnosti Microsoft. Ostatní vývojári, ktorí nechcú vytvárať samostatné aplikácie UWP, by zrazu mohli podporovať systém Windows 10 s natívnymi PWA.
Vývojári by mali jednoduchší spôsob, ako robiť svoje aplikácie na webe výkonnejším a integrovanejším spôsobom na širokú škálu zariadení, bez toho, aby prechádzali cez obruče aplikácií. Webové aplikácie, ktoré fungujú všade, by mohli lepšie konkurovať natívnym aplikáciám, ktoré fungujú na jedinej platforme. Spoločnosť, ktorá má zdroje na vytvorenie jedinej aplikácie, môže vytvoriť PWA a podporovať všetko, a nie vytvárať samostatné aplikácie pre iOS, Android, Windows a web.
A pretože poskytovatelia súborov Web App Manifest poskytujú, vyhľadávacie nástroje budú môcť prehľadávať web a jednoducho nájsť dostupné PWA online. Týmto sa PWA ľahko objavia, rovnako ako webové stránky.
Aké platformy sú podporované?
S ďalšou aktualizáciou systému Windows 10 - aktualizácia v apríli 2018, s kódovým označením Redstone 4, ktorá bude vydaná 30. apríla - spoločnosť Microsoft povolí podporu pre PWA. Ako na iných platformách, môžete sa dostať na webovú lokalitu spoločnosti PWA a nainštalovať ju prostredníctvom aplikácie Microsoft Edge. Spoločnosť Microsoft však bude ukladať aj progresívne webové aplikácie v obchode pre jednoduchú inštaláciu. Vývojári si môžu ukladať svoje vlastné aplikácie v obchode, ale spoločnosť Microsoft bude tiež používať Bing na vyhľadanie dobrých PWA na webe a automaticky ich vymenovať. Budú naďalej bežne hosťované na svojich webových stránkach a aktualizované vývojárom, ale spoločnosť Microsoft uľahčuje ich vyhľadávanie a inštaláciu. Nikdy nebudete musieť otvoriť prehliadač Edge, aby ste našli, inštalovali a spustili PWA v systéme Windows 10. To by malo pomôcť hromadeniu systému Windows Store, ale vyzerá to ako zlá správa pre platformu aplikácií UWP spoločnosti Microsoft. Prečo by mnohí vývojári vytvorili aplikáciu UWP, keď by PWA fungoval vo viacerých operačných systémoch?
V prehliadači Google Chrome - či už pre Windows, Mac, Linux alebo Chrome OS - PWA sa chystá nahradiť prerušovanú platformu Chrome Apps. Google tvrdí, že podpora pre inštaláciu desktopov PWA by mala prísť "zhruba v polovici roku 2018". Potom tieto PWA pracujú s Chrome na pracovnej ploche. Táto funkcia je už testovaná v nestabilnej vývojovej verzii prehliadača Chrome nazvanej Kanárske.
V systéme Android už program Google Chrome podporuje inštaláciu PWA, rovnako ako iné mobilné prehliadače, ako napríklad Mozilla Firefox, Opera a prehliadač Samsung. Spoločnosť Google pracuje na technológii s názvom WebAPK, ktorá umožní, aby boli PWA premenené na súbory APK (súbory aplikácií pre Android) a nainštalované do zariadenia, ako sú ostatné aplikácie. Projektový manažér spoločnosti Chrome naznačil, že do Obchodu Play môžu byť pridané aj PWA.
Zatiaľ čo Apple nebol vokálnym navrhovateľom alebo účastníkom, teraz pridávajú funkcie PWA aj do prehliadača Safari.
Rok 2018 by mal byť veľkým rokom pre PWA, najmä v systéme Windows 10, kde by mohli spoločnosti Microsoft pomôcť uzavrieť rozdiel medzi aplikáciami a mať viac aplikácií s natívnym štýlom.