Direkt zum Hauptbereich

Progressive Web App

In einem vorherigen Post habe ich meinen kleinen Notenrechner vorgestellt.

In diesem Post möchte ich basierend darauf eine Progressive Web App vorstellen welche Online wie Offline funktioniert. Und welche man auch dann laden kann wenn der Browser offline ist.

Die Seite sowie den Quellcode findet hier hier:

Notenrechner:
https://kayschneider.github.io/notenRechner/#/calc


Quellcode:
https://github.com/KaySchneider/notenRechner


Was genau eine Progressive Web App ist, wird hier erklärt:
https://developers.google.com/web/progressive-web-apps/

In diesem kleinen Notenrechner, widme ich mich nur der Offline Funktionalität der kleinen App. Der Notenrechner soll online und offline gleichermaßen funktionieren.

Dazu benötigen wir einen Service Worker, welcher uns den gewünschten content herunterlädt und beim Nutzer auf die Festplatte ablegt, dort kann nun auch im Offline Modus auf die Inhalte zugegriffen werden. Als positiver Nebeneffekt, lädt die Seite auch schneller zumindest beim zweiten Besuch der Seite da die Inhalte schon beim Nutzer liegen.

Wichtig ist als erstes ein manifest.json einzubinden und eure Seite muss via SSL ausgeliefert werden. Dazu kann man auch die gesamte check liste von google durchgehen:

https://developers.google.com/web/progressive-web-apps/checklist 

Hier  ein Beispielhaftes manifest.json:



Wichtig ist das das manifest.json folgende Attribute enthält:

  • name Der Name wird im Installations Banner angezeigt
  • short_name Dieser Name wird auf dem Home screen angezeigt und sollte kürzer sein 
Die Icons sollten in den unterschiedlichen größen hinterlegt werden, dies erleichtert das auffinden eurer progressive Web App auf dem Handy enorm. 
Das Attribute start_url enthält die zu startende Seite wenn der Nutzer die Anwendung startet. Hier kann man auch ein tracking Parameter hinzufügen start_url:"?utm_source=homescreen". Somit könnt ihr tracken wieviel Nutzer eure app wirklich auch vom Homescreen heraus starten.

Mit dem Attribut display kann man die Anwendung im Browser öffnen lassen oder standalone. Der standalone Modus fühlt sich mehr wie eine Anwendung an.
Mögliche Werte für das Attribut display:
  • browser Öffnet die Anwendung im Browser
  • standalone Öffnet die Anwendung im Standalone Modus(ähnlich wie eine App) 

Weiterführende Informationen zum Thema Web manifest finden sich hier:


Der wichtigste Teil in diesem Beitrag ist der Service Worker. 










Kommentare

Beliebte Posts aus diesem Blog

Create a progressive web application - live coding session video

Aprilscherz Google Maps - Spiele Ms. Pac-Man

In diesem Jahr hat das Google Maps team einen Aprilscherz aus dem Jahre 2015 ausgegraben und etwas erweiteret. Im Jahr 2015 konnte man Pac-Man spielen. In diesem Jahr ist es die "Ms. Pac-Man" geworden. Im Video zeige ich es euch in der Google Maps App auf dem Android