Co jsou progresivní webové aplikace?
Chtěli jste někdy webové aplikace chovat spíše jako skutečné aplikace? Progresivní webové aplikace jsou novou technologií, která je zaměřena na to, aby se to stalo.
Krátká verze: jaké jsou progresivní webové aplikace?
Zde je rychlý souhrn: Google, Microsoft, Mozilla a další společnosti pracují na novém moderním standardu webových aplikací. Dokonce i Apple sleduje a provádí podporu pro ni. Tyto aplikace jsou webové aplikace, ale chovají se spíše jako nativní aplikace. Stejně jako stávající webové aplikace budou hostovány přímo na přidružených webových stránkách. Vývojáři je mohou aktualizovat přímo na svém webovém serveru, aniž by tyto aktualizace odeslali do několika různých obchodů s aplikacemi a stejná aplikace bude fungovat ve všech prohlížečích a platformách.
Při instalaci progresivní webové aplikace získáte domovskou obrazovku, panel úloh nebo zástupce na ploše, který spouští aplikaci (v závislosti na vaší platformě). Aplikace se načte rychle a bude obsahovat podporu offline, push oznámení, podporu synchronizace pozadí a další moderní dobroty.
Tyto aplikace mohou také využívat stávající webové technologie k přístupu k službám určování polohy, vaší webové kamery a dalším takovým funkcím, které bychom normálně přiřadili k nativním aplikacím. Samozřejmě, aplikace vás musí požádat a získat vaše oprávnění, než se k těmto věcem dostanete.
Technická verze: Jak fungují?
Progresivní webové aplikace jsou tradiční webové aplikace, které jsou vylepšeny moderními webovými technologiemi a umožňují jim poskytnout více zkušeností s aplikací. "Progresivní" část znamená, že jsou "progresivně vylepšena" pomocí moderních webových funkcí, což znamená, že budou pracovat i ve starších prohlížečích, které nepodporují nové funkce, ale budou pracovat lépe a s dalšími funkcemi v moderních prohlížečích.
Tyto aplikace získají své vlastní okno a zástupce na hlavním panelu (v systémech Windows 10 a všeho, co běží v Chromu) nebo ikonu na domovské obrazovce (na zařízeních Android a dalších smartphonech). Když je otevřete, rychle se načítají díky API mezipaměti a IndexedDB, která ukládá zdroje a data aplikace do vašeho zařízení, což jim umožní pracovat i když jsou offline. Technologie, jako jsou servisní pracovníci a upozornění na push, umožňují aplikaci provádět zálohové úkoly, jako je synchronizace a odesílání oznámení, i když nejsou spuštěny, jako je například nativní aplikace. Aplikace Fetch API umožňuje aplikaci rychleji a jednodušeji požadovat data. Mají soubor Manifest Web App, který obsahuje jméno, ikonu, autor a popis, který se používá při instalaci aplikace na domovskou nebo pracovní plochu. Jsou vždy podávány prostřednictvím šifrovaného protokolu HTTPS, což znamená, že jsou zabezpečené a data nelze manipulovat při přepravě.
Progresivní webové aplikace nejsou podobné balíčkům Aplikace Google Chrome nebo hostovaným webovým aplikacím společnosti Microsoft. Ti požadovali, aby aplikace byla "zabalena" jako soubor a odeslala do obchodu s aplikacemi. Celá aplikace žila v malém offline balíčku a uživatelé jej museli nainstalovat buď z internetového obchodu Chrome nebo z obchodu Windows Store. Byly to také platformy specifické a fungovaly by pouze v Chrome nebo Windows. Vývojář musel změnit soubory aplikace offline a odeslat novou verzi do obchodu s aplikací a aktualizovat ji.
Namísto toho jsou PWA nikdy zabaleny do souboru offline. Stejně jako tradiční webové aplikace, které dnes používáme, jsou hostovány zcela na serverech aplikace. Pokud chce vývojář aktualizovat svou progresivní webovou aplikaci, aktualizují ji přesně tak, jako by aktualizovali webovou aplikaci - na svých serverech. Všechny platformy a prohlížeče podporující PWA mohou používat stejné Progressive Web Apps.
PWA mohou být uvedeny v obchodech s aplikacemi pro snadnější zjišťování a instalaci, ale úložiště aplikací bude pouze směřovat na servery webové aplikace. Dokonce ani v případě, že aplikace není kompatibilní s pravidly pro obsah aplikace, uživatelé ji budou moci najít a nainstalovat přímo z prohlížeče.
Proč to záleží
Nejde jen o to, aby byly webové aplikace trochu hezčí. Jedná se o zavedení nového standardu pro instalovatelné aplikace, který podporuje každá platforma. To by mohlo v blízké budoucnosti znamenat některé překvapující události.
Například po dokončení této práce může Google povolit, aby služby jako Gmail a Kalendář Google fungovaly jako PWA. To znamená, že by se spustili jako aplikace s nativním stylem v systému Windows 10 a aby byly uvedeny v systému Windows Store. To by znamenalo dlouhou cestu k řešení problému s aplikací Windows Store, protože společnost Google nechce podporovat univerzální platformu Windows (UWP) společnosti Microsoft. Jiní vývojáři, kteří nechtěli vytvářet samostatné aplikace UWP, by najednou mohli podporovat systém Windows 10 s nativním PWA.
Vývojáři by měli snadnější způsob, jak své webové aplikace pracovat výkonnějším a integrovaným způsobem na nejrůznějších zařízeních, aniž by přeskočili přes obruče aplikací. Webové aplikace, které fungují všude, budou schopny lépe konkurovat nativním aplikacím pracujícím na jedné platformě. Společnost, která prostě disponuje prostředky pro vytvoření jedné aplikace, by mohla vytvořit PWA a podporovat vše, spíše než vytvářet samostatné aplikace pro iOS, Android, Windows a web.
A vzhledem k tomu, že vývojáři poskytují soubory aplikace Manifest pro web aplikace, vyhledávače budou moci procházet web a snadno najít dostupné PWA online. Díky tomu budou PWA snadno vyhledatelné, stejně jako webové stránky.
Které platformy jsou podporovány?
Progresivní webové aplikace se již nějakou dobu vyvíjejí, ale chystají se do většího veřejného oka.
S příští aktualizací Windows 10 - aktualizace v dubnu 2018, s kódovým označením Redstone 4, která bude vydána 30. dubna - Microsoft povoluje podporu pro PWA. Stejně jako na jiných platformách, můžete se vydat na webové stránky společnosti PWA a nainstalovat je přes Microsoft Edge. Společnost Microsoft bude navíc ukládání progresivních webových aplikací v obchodě pro snadnou instalaci. Vývojáři mohou v obchodě uvést své vlastní aplikace, ale společnost Microsoft bude také používat službu Bing, aby našla dobré PWA na webu a automaticky je uvedla do seznamu. Budou stále hostovány na svých webových stránkách a aktualizovány vývojářem, ale Microsoft jim usnadňuje jejich vyhledávání a instalaci. Nikdy nebudete muset otevřít prohlížeč Edge, abyste našli, nainstalovali a spustili PWA v systému Windows 10. To by mělo pomáhat hromadně v systému Windows Store, ale vypadá to jako špatná zpráva pro platformu aplikací Microsoft UWP. Proč by mnoho vývojářů vytvořilo aplikaci UWP, pokud by PWA fungovalo na více operačních systémech?
V prohlížeči Google Chrome - ať už se jedná o systém Windows, Mac, Linux nebo Chrome OS - PWA se chystá nahradit ukončenou platformu "Chrome Apps". Google říká, že podpora instalace desktopů PWA by měla přijít zhruba "v polovině roku 2018". Pak tyto PWA pracují s Chrome na ploše. Tato funkce je již testována v nestabilní vývojové verzi prohlížeče Chrome nazvané Canary.
Aplikace Google Chrome již v systému Android podporuje instalaci zařízení PWA, stejně jako ostatní mobilní prohlížeče, jako jsou Mozilla Firefox, Opera a prohlížeč Samsung. Společnost Google pracuje na technologii s názvem WebAPK, která umožní, aby byly PWA převedeny do souborů APK (soubory s aplikací pro Android) a nainstalovány do zařízení, stejně jako jiné aplikace. Vedoucí projektu Chrome naznačil, že do Obchodu Play mohou být přidány také PWA.
Zatímco Apple nebyl hereckým předkladatelem nebo účastníkem, nyní přidává funkce prohlížeče PWA také do prohlížeče Safari.
2018 by měl být velkým rokem pro PWA, zejména v systému Windows 10, kde by mohli pomoci společnosti Microsoft uzavřít rozdíly v aplikacích a mít více aplikací v nativním stylu.
Image Credit: Prabowo96