28. Červenec 2025

Úvod do Progressive Web Applications (PWA) a jejich přínosy

V dnešním digitálním světě uživatelé spoléhají na rychlé, spolehlivé a intuitivní aplikace. Progressive Web Applications (PWA) představují inovativní přístup k vývoji webových aplikací, který stírá hranice mezi webovými stránkami a nativními mobilními aplikacemi.

 

Co jsou Progressive Web Applications (PWA)?

PWA jsou webové aplikace, které se načítají a vypadají jako běžné webové stránky, ale zároveň nabízejí funkce, které jsou typicky dostupné pouze u nativních aplikací. Termín „progressive web app“ poprvé použil Alex Russell z Google Chrome. Tyto aplikace efektivně překlenují propast mezi mobilními aplikacemi a webovými stránkami, nabízejíce to nejlepší z obou světů.

Uživatelé získají spuštěcí ikonu na domovské obrazovce a aplikace se zobrazí v novém okně (na desktopu) nebo na celé obrazovce (na mobilu) bez adresního řádku.

Co dělá webovou aplikaci progresivní?

Aby se webová aplikace stala progresivní, musí splňovat určité klíčové požadavky a využívat moderní technologie:

  • Protokol HTTPS: Zajišťuje šifrovanou komunikaci mezi prohlížečem a serverem, čímž zvyšuje bezpečnost dat.
  • Manifest soubor: Pomáhá definovat strukturu aplikace, její vzhled na obrazovce, požadavky a metadata.
  • Service Workers: JavaScriptové soubory, které běží na pozadí a fungují jako proxy mezi prohlížečem, sítí a aplikací. Umožňují například doručování push zpráv, načítání zdrojů z cache apod.

Přínosy Progressive Web Applications (PWA)

Pro uživatele:

  • Rychlejší práce a lepší výkon: Díky cachování jsou stránky rychlejší a plynulejší. 53 % uživatelů opustí stránku, pokud se načítá déle než 3 sekundy.
  • Fungují offline a všude: Service workery umožňují provoz i bez připojení k internetu.
  • Minimální velikost: Například PWA Tinderu má jen 2,8 MB oproti 30 MB u nativní aplikace.
  • Přímá instalace: Bez nutnosti App Store nebo Google Play.
  • Push notifikace: Možnost zasílání oznámení i bez otevřeného prohlížeče.
  • Integrace se zařízením: Například přístup k fotoaparátu nebo GPS.
  • Automatické aktualizace: Uživatel nemusí nic instalovat.
  • SEO přívětivost: Lepší viditelnost ve vyhledávačích.

Pro developery a firmy:

  • Jedna kódová základna: Pro Android, iOS i desktop.
  • Bez poplatků za distribuci: Nezávislé na aplikačních obchodech.
  • Rychlejší vývoj: Nižší složitost, kratší doba uvedení na trh.
  • Snížení nákladů: Jednodušší údržba a vývoj.
  • Komunikace pomocí push notifikací: Přímý marketingový kanál.

PWA v Oracle APEXu

Oracle APEX podporuje tvorbu PWA od verze 21.2 (listopad 2021). Tato podpora se dále rozšiřovala:

  • APEX 21.2: Deklarativní PWA a instalace aplikací.
  • APEX 22.1: Přizpůsobení service workerů a trvalá autentizace.
  • APEX 22.2: Podpora shortcutů, geolokace, web share a dalších funkcí.
  • APEX 23.1: Podpora push notifikací.

Nastavení a funkce PWA v APEXu:

  • Shared Components: Aktivace PWA, barvy, popis, zobrazení.
  • User Interface Attributes: Ikona a název aplikace.
  • Push notifikace: Vyžadují souhlas uživatele i podporu služby jako FCM či Apple Push.
  • Jednoduchá aktivace: Zaškrtnutí „Install Progressive Web App“ při vytvoření nové aplikace.
  • Požadavky: Friendly URLs a HTTPS.
  • Zkratky: Pro přístup ke konkrétním stránkám.
  • Geolokace: Dynamická akce „Get Current Position“.
  • Web Share: Sdílení dat pomocí dynamických akcí a Meta Tagů.

Co je v plánu pro PWA v APEXu?

  • Odznaky pro upozornění.
  • Podpora více aplikací v jedné PWA.
  • Distribuce přes App Store a Play Store.
  • Vynucení použití PWA u uživatelů.
  • QR sdílení stránek a dat (verze 23.2).
  • Nahrávání a úprava obrázků (verze 23.2).
  • Analytické nástroje pro správu PWA.

Závěr

Progressive Web Applications představují revoluční způsob vývoje moderních aplikací. V kombinaci s platformou Oracle APEX přinášejí vývojářům možnost vytvářet vysoce kvalitní aplikace s uživatelským zážitkem na úrovni nativních mobilních aplikací, ale bez vysokých nákladů a složité správy. Pro firmy, které chtějí být relevantní v mobilní éře, jsou PWA nepostradatelným nástrojem.