Technologie

Progressive Web App (PWA): Warum PWAs immer wichtiger werden

PWA setzt sich aus den Begriffen Web-Apps und Progressive Enhancement zusammen. Eine Progressive Web-App ist eine Website, welche Merkmale beinhaltet die bisher nur nativen Apps vorbehalten war. Man kann sie als eine Symbiose aus responsiver Website und einer App beschreiben.


Die Webseiten basieren auf Grundlage von HTML, CSS und JavaScript. Die Nutzung dieser drei Technologien erlaubt, dass eine unabhängige Plattform zustande kommt, indem sich die Webanwendungen an das Zielgerät so weit wie es geht, anpassen.


Das Ziel ist, dass die Anwendung auf jedem Endgerät und Browser funktioniert. Dabei ist der Umfang allerdings unterschiedlich, da sich die Anwendung an die aufgerufene Umgebung progressiv anpasst.


Aus Design Sicht sind die PWAs an nativen Apps orientiert. Die App Shell bezeichnet dabei das Grundgerüst für die dynamischen Inhalte. Diese sind so angelegt, dass nach dem ersten Aufruf diese in den Geräte-Cache gelegt werden und zukünftig von dort aus ohne Verzögerungen aufgerufen werden können.


Das Herzstück einer PWA ist der Service Worker. Damit wird ein Modul bezeichnet, welches im Hintergrund einer Webanwendung arbeitet, auch wenn die Website selbst gar nicht geöffnet ist. Ein Anwendungsfall ist dabei das Cachen von Inhalten, was erlaubt, dass stets Inhalte ohne Ladepause verfügbar für den Nutzer gemacht werden können. Alle PWAs laufen mit HTTPS, da Service Worker durch HTTPS bedingt werden.


Indem PWAs zur Installation angeboten werden, kann das Nutzererlebnis näher an nativen Apps angelehnt werden. Der Nutzer wird in die Lage versetzt, die App auf das Gerät zu “installieren”. Die PWA ist auf dem Home Screen von einer nativen App nicht mehr zu unterscheiden. Man hinterlegt dabei eine JSON-Datei, welche als Web App Manifest bezeichnet wird.


Außerdem ist die Zuweisung eines Icons möglich und es kann festgelegt werden, dass die App in einem Standalone-Modus angezeigt wird. Der ausführende Browser wird also nicht rund um die App angezeigt und das native Erlebnis wird verstärkt.


Zudem kann über die Push-API der Verwender der App Benachrichtigungen direkt auf sein Display gesendet bekommen, auch wenn die App zu dem Zeitpunkt nicht geöffnet bzw. verwendet wird. Damit kann die Interaktionsrate mit der App proaktiv gesteigert werden. Es sollte aber bedacht werden, dass die Push Notifications der App nur mit Zustimmung des Nutzers auf dem Display angezeigt werden. 


Es ist nur eine Frage der Zeit bis sich PWA als neuer Standard für hybride Apps etabliert. Die Wartung fällt wesentlich geringer aus als bei nativen Apps und sie funktioniert unabhängig von verschiedenen mobilen Plattformen.


Ein weiterer Vorteil von PWA zu native Apps ist, dass eine App erst im App Store heruntergeladen und installiert werden muss während eine PWA auch ohne Installation funktioniert und via URL mit anderen teilbar ist. Das senkt die Barriere. Der Browser dient hier als Basis. Dadurch benötigen progressive Web-Apps auch weniger Speicherplatz auf dem Endgerät und können so auch mit älteren Smartphone-Modellen, sowie Betriebssystemen kompatibel sein.


PWAs sind zudem sofort einsatzbereit im Gegensatz zu nativen Apps, welche erst durch die App Stores validiert und freigegeben werden müssen. Eine Aktualisierung durch den Nutzer ist bei PWAs nahezu sofort möglich, während bei nativen Apps eine Aktualisierung zu Verzögerungen führt.

Allerdings sind native Apps dafür meist schneller als PWAs und eine Validierung durch den App Store kann zu einer Sicherheits- und Kompatibilitätsgarantie führen, da die Apps extra für ein bestimmtes Betriebssystem optimiert wurden. Die Wartung von PWAs kann allerdings dann teurer werden, wenn die PWA auf mehreren mobilen Browsern unterstützt werden soll.


PWAs laufen nicht auf allen Browsern vollständig mit allen Features. Grundsätzlich läuft die Web-App auf Apple-Geräten, aber durch fehlende Service Worker Unterstützung kann man das Erlebnis nicht 100 % progressiv nennen. Wobei dabei angemerkt werden muss, dass Apple daran arbeitet, PWAs mehr Funktionen einzuräumen.

Auf die Funktionen von Endgeräten hat eine PWA nur limitierten Zugriff, beispielsweise können meist nur native Apps auf Geräte-Hardware, wie der Kamera zugreifen.


Während PWAs über Google und Co gefunden und ohne Installation direkt verwendet werden können, finden sich erfolgreiche native Apps in den App-Stores in den Top-Listen und können schnell hohe Download-Zahlen erreichen. Zudem sind App Stores bekannte Bezugsquellen für Apps. 


Native Apps haben zwar gegenüber PWAs Vorteile in Bereichen der Sicherheit und des Zugriffs auf die nativen Funktionen des Endgeräts, doch das sind Faktoren, welche nicht unbedingt gegen Progressive Web-Apps sprechen. Progressive Web-Apps haben die Möglichkeit sich weiterzuentwickeln und durch das Einräumen von Funktionen durch Browser und Anbieter ihre Leistung zu optimieren. Auch wenn App Stores bisher noch die bekanntesten Orte sind um Apps zu finden, ist es nur eine Frage der Zeit bis progressive Web-Apps ihren Weg an die Spitze finden.

Weitere Posts