#1/ 2021
7/11

Was ist eine Progressive Web-App?

Für das neue App-Format zeichnet sich vor allem Google verantwortlich. Daher verwundert es nicht, dass PWAs bisher vor allem für die Nutzung mit dem hauseigenen Android-Betriebssystem ausgelegt sind – auf iOS-Geräten des Konkurrenten Apple laufen sie meist nur mit Einschränkungen. Die Technologie befindet sich aber noch in einer frühen Phase und kann auch deshalb noch nicht ihr volles Potenzial entfalten. Allerdings ist schon jetzt absehbar, dass Google in ihre Weiterentwicklung investieren wird. Die weitere Optimierung von PWAs ist deshalb sehr wahrscheinlich.

PWA: Website und App in einem

Eine PWA ist über eine URL im Internet zugänglich und wird im Browser ausgeführt, wodurch sie grundsätzlich auf verschiedenen Betriebssystemen läuft. Außerdem ist sie dadurch unabhängig von einem App-Store verfügbar und benötigt keine Installation.

Im Unterschied zu einer herkömmlichen Web-App kann man eine Progressive Web-App aber auch offline ausführen. Dazu legt man auf dem Homescreen eines internetfähigen Geräts eine Verknüpfung mit der entsprechenden URL an. Damit lässt sich die App dann einfach aufrufen – auch wenn nur eine schwache oder gar keine Internetverbindung besteht (Voraussetzung dafür ist ein Offline-Cache im Browser). Die Anwendung präsentiert sich dann jedoch oft nicht wie eine Website, sondern vermittelt vielmehr den Eindruck einer nativen App. Dank ihres responsiven Designs passt sie sich an jegliche Displaygröße an.

PWA vs. Native App

Eine PWA kann man sich wie eine responsive Webanwendung vorstellen, die den Anschein einer nativen App erweckt. So kann die Applikation native Funktionen des verwendeten Geräts wie Kamera und Mikrofon, GPS-Ortung oder Push-Benachrichtigungen nutzen und in das Programm einbeziehen. Dabei prüft die Anwendung sowohl den genutzten Browser als auch das Gerät auf Kompatibilität. Auch das „Look and Feel“ einer PWA verhält sich auf einem Smartphone und Tablet ähnlich wie bei einer Native Mobile App (flüssige Verhaltensweise bei der Bedienung, gute Reaktionszeiten bei Wischbewegungen etc.).

Eine progressive Web-App online zu öffnen, hat allerdings den Vorteil, dass man stets auf die neueste Version zurückgreifen kann. Anders als bei einer Native App müssen sich die User also nicht um die Aktualisierung kümmern – sobald eine Anbindung an den Server der PWA besteht, wird die Applikation auf mögliche Updates überprüft.

Weitere Vorzüge gegenüber einer nativen App sind der geringere Arbeitsaufwand für die Entwicklung einer PWA (denn sie ist zugleich eine Website und eine auf verschiedenen Betriebssystemen laufende App) und die dadurch ebenfalls geringeren Kosten – und das bei einer für viele Szenarien ähnlich guten Reaktionszeit bei der Wiedergabe und Bedienung. Dabei benötigt eine PWA kaum Speicherplatz auf dem Endgerät (was allerdings auch von der Größe des Offline-Caches abhängt). 

Einige der genannten Funktionen bieten jedoch auch bereits klassische Web-Apps sowie mit Einschränkungen auch responsive und mobile Websites. Was also ist neu an Progressive Web-Apps gegenüber klassischen Web-Apps?

PWA vs. traditionelle Web-App

Bereits klassische Web-Apps können browserbasiert (also ohne Installation) auf verschiedenen mobilen Betriebssystemen wie Android, iOS und Windows Phone laufen. Der Ansatz einer progressiven Web-App ist demnach keineswegs neu, präsentiert sich aber wesentlich ausgereifter als bei traditionellen Web-Apps: Der Funktionsumfang einer PWA passt sich an den Nutzungsrahmen an, was bedeutet, dass auch User, deren Geräte und/oder Browser nicht mit allen Features der Anwendung kompatibel sind, diese dennoch nutzen können (wenn auch nur in reduzierter Form).

Progressiv sind die Apps in dem Sinne, dass sie in jedem Browser lauffähig sind, ihr Funktionsumfang sich jedoch an die eingesetzte Hardware und die Browserfunktionen anpasst. Die Features einer PWA wachsen also mit den Gegebenheiten des genutzten Browsers und Endgeräts.

PWA vs. Hybrid-App

Neben der Web-App gibt es mit der schon länger existierenden Hybrid-App ein weiteres Format, das einige Merkmale nativer Applikationen nachahmt und einige ihrer Defizite bewältigt. So kann man eine hybride App – ähnlich wie eine PWA – mit einem vergleichsweise geringen Arbeitsaufwand für verschiedene mobile Betriebssysteme entwickeln. Jedoch verfolgen Hybrid-Apps dabei einen anderen Ansatz: Sie werden per Installation in Android oder iOS integriert und imitieren so die Funktionsweise von nativen Apps – was Vor- und Nachteile hat.

Neben der weniger aufwendigen Entwicklung bildet die Integration in das Betriebssystem einen wesentlichen Pluspunkt hybrider Apps. Sie profitieren dabei davon, dass sich durch die Installation mehr native Gerätefunktionen einbeziehen lassen als bei (progressiven) Web-Apps – allerdings immer noch weniger als bei nativen Apps.

Doch die notwendige Installation birgt auch Nachteile. Hybrid-Apps lassen Sie sich nicht so einfach testen, wie es das Web-App-Format erlaubt. Zudem bleibt die Anwendung plattformabhängig – und selbst wenn hier die Entwicklung für ein einzelnes Betriebssystem schneller von der Hand geht als bei Native Apps, so bedeutet dies im Endeffekt dennoch deutlich mehr Programmieraufwand als bei einer Progressive Web-App. Denn bei der Entwicklung einer PWA müssen keine Modifikationen für Android und iOS vorgenommen werden – hier rückt stattdessen die Kompatibilität der Hardware und des Browsers in den Mittelpunkt.