Intro
Wenn Sie mit Software arbeiten, die auf mobilen Geräten läuft - auch bekannt als “Apps” - sind Sie wahrscheinlich schon auf den Begriff “PWA” gestoßen.
Aber was ist eine PWA - und warum sollte Sie das interessieren?
Table Of Contents
Grundlagen
Die Entwicklung von Software für Android und iPhone (iOS) ist teuer. Sie müssen zwei verschiedene Plattformen, Programmiersprachen und APIs unterstützen. Sie müssen auch das unterschiedliche Look-and-Feel und die Fähigkeiten verstehen.
Native App-Entwicklung ist teuer. Sie benötigen mindestens 2 - besser 4 Engineers für eine moderat komplexe Anwendung. Das bedeutet einen Preis von rund 150.000-300.000 USD. Wow.
Aber Sie haben bereits einen Webentwickler. Wäre es nicht großartig, diese Entwickler einfach Webanwendungen bauen zu lassen, die auch auf mobilen Geräten laufen?
Leider reicht eine Webanwendung (also HTML-Seiten) normalerweise nicht aus. Sie brauchen eine tiefere Integration, um auf die Kamera, den QR-Scanner, Zahlungsmethoden, Benachrichtigungen zuzugreifen und ein gutes “App-artiges” Offline-Erlebnis zu ermöglichen.
Hier kommen PWAs ins Spiel.
Mit PWAs können Sie traditionelle Webanwendungen schreiben, die HTML rendern. Aber diese können auch “erweitert” werden, um eine tiefe Integration mit Mobiltelefonen zu unterstützen, die wie echte Apps aussehen.
Features
Caching und Offline-Fähigkeiten
Dies ist einer der Kernbestandteile von PWAs. Sie ermöglichen es Ihnen, festzulegen, welche Dateien für die Offline-Nutzung über Service Worker verfügbar sein müssen.
Dies ist besonders wichtig, wenn Sie eine instabile Verbindung haben (sehr häufig in der mobilen Welt).
Sie haben auch die Möglichkeit, einen Job (z.B. Sync) automatisch fortzusetzen, wenn die Verbindung wieder hergestellt wird. Auch wenn Ihre PWA nicht mehr gestartet ist, über die Background Sync API.
Zugriff auf das Gerät
Native Apps sind tief in das Telefon integriert. Wir nehmen es als selbstverständlich hin, dass Apps uns Benachrichtigungen senden, andere Apps öffnen oder QR-Codes scannen können, auch wenn die App nicht läuft.
Webseiten können das nicht. Aber die PWA-Spezifikation erlaubt es ihnen.
Einige Beispiele:
- Native Benachrichtigungen senden: https://developer.mozilla.org/en-US/docs/Web/API/Notifications_API
- Background Sync API: https://whatpwacando.today/background-sync
- Payment API: https://whatpwacando.today/payment
PWAs können noch viel mehr wie Spracherkennung, Barcode-Scanning und so weiter
Danny Moerkerke hat eine nette Demo aller Features erstellt. Ein großartiger Ort, um mit PWA-Features zu experimentieren: https://whatpwacando.today/notifications
Gefahren
Unterstützung durch Mobilfunkhersteller
PWAs benötigen Browser-Unterstützung.
Bei Android ist das kein großes Risiko, da es viele Browser gibt und Googles Chrome PWAs unterstützt und vorantreibt.
Aber bei Apple sieht es anders aus. Im Februar beschloss Apple aus heiterem Himmel, Teile der PWA-Spezifikation kurzfristig auf allen iPhones und iOS-Geräten nicht mehr zu unterstützen. Nach einem Aufschrei ruderten sie von dieser Entscheidung zurück.
Dies ist ein Risiko, das man kennen sollte. Und wenn Sie dieses Risiko nicht eingehen wollen, müssen Sie echte Apps schreiben - entweder nativ oder mit Frameworks wie Flutter oder React Native.
Unverständnis für die mobile Welt
Nur ein paar APIs zu einer Webseite hinzuzufügen, macht sie noch nicht zu einer echten und guten mobilen Erfahrung. Ihre Product Owner müssen die Fähigkeiten, Möglichkeiten und Herausforderungen von mobilen Geräten verstehen.
Andernfalls frustrieren Sie Ihre Nutzer mit einer sehr schlechten Erfahrung.
Wenn Sie Ihre Webanwendungen mit der PWA-Spezifikation erweitert haben, die Nutzung aber nicht steigt, dann müssen Sie untersuchen:
- Vielleicht brauchen meine Nutzer keine mobile Anwendung.
- Oder ist meine PWA-Erfahrung so schlecht, dass ich sie vertreibe?
Ziehen Sie keine voreiligen Schlüsse!
Aktuelle Entwicklungen
Der PWA-Standard ist nicht neu, aber viele Jahre gab es keine gute Unterstützung über alle Browser hinweg. Das ändert sich ab 2025. Verbesserungen in Safari und iOS sind nun auf Augenhöhe mit Android und dessen Chrome-Implementierungen. Die Erstellung plattformübergreifender Apps mit PWA ist jetzt für viele Anwendungsfälle eine echte Option.
Weitere Beispiele:
Fazit
Abhängig von Ihren mobilen Anforderungen können PWAs eine großartige, kosteneffektive Möglichkeit sein, die Reichweite Ihrer Webanwendungen zu erweitern. PWAs ermöglichen es Ihnen, sich tief in die mobilen Geräte Ihrer Nutzer zu integrieren. PWAs können wie echte Apps aussehen und sich so anfühlen - zu einem Bruchteil der Kosten.
Aber PWAs sind immer noch keine echten nativen Apps - und sie sind nicht für jeden geeignet!. Echte native Apps haben mehr Fähigkeiten und Optionen. Sie können beispielsweise das Aussehen und das Verhalten von Benachrichtigungen mit nativen Apps viel tiefgreifender anpassen. Und wenn das für Sie wichtig ist, dann sind PWAs wahrscheinlich die falsche Wahl.
