Open Source im professionellen Einsatz
Linux-Magazin Online Artikel/
© Ioannis Kounadeas, fotolia.com

© Ioannis Kounadeas, fotolia.com

Anwendungen für Online und Offline mit Google Gears - Teil 2

Das Getriebe greift

20.02.2009

Mit Google Gears können Webanwendungen Daten lokal zwischenspeichern, damit sie sich auch offline nutzen. Der zweite Artikel zum Thema demonstriert die Technologie an zwei praktischen Beispielen.

554

Teil 1 erklärte die Architektur von Google Gears und stellte einige Vorüberlegungen zu Webanwendungen an, die auch im Offline-Modus funktionieren sollen. Nun geht es ans Coden mit zwei einfachen praktischen Gears-Beispielen.

Eine statische Gears-Anwendung

Als erstes Beispiel dient eine statische Website. Diese einfache Gears-Anwendung hält den Inhalt einer oder mehrerer URLs in einem clientseitigen Speicher bereit. Ist der Speicher einmal befüllt, kann der Anwender die Internetverbindung trennt, ja sogar den Browser-Cache leeren, und dennoch bleibt der Inhalt der URLs aufrufbar. Eine solche Anwendung ließe sich beispielsweise für ein Hilfesystem mit verlinkten Handbuchseiten nutzen.

Eine statische Gears-Anwendung legt die gewünschten URLs fest, bezeichnet den clientseitigen Speicherort, lädt dann die Inhalte herunter und speichert diese. Daneben soll sich der lokale Speicher aktualisieren, wenn sich die Daten auf dem Server ändert. Zu guter Letzt lässt sich der Speicher auf dem Client auch löschen

Gears-Installation

Die Arbeit am Beispielprojekt beginnt mit Download und Installation von Gears, was gerade einmal fünf Minuten in Anspruch nimmt. Eine Installationsanleitung für verschiedene Plattformen und Browser gibt es auf der Gears-Homepage.

Im nächsten Schritt schreibt der Entwickler alle URLs nieder, die die Anwendung clientseitig speichern soll. Dazu gehören nicht nur HTML-Seiten, sondern auch alle benötigten Bilder, CSS- und Javascript-Dateien sowie Multimedia-Inhalte. Diese Liste wird im Gears-"Manifest" in Javascript Object Notation (JSON) festgehalten. Der Dateiname des Manifests ist folglich "manifest.json" - Listing 1 zeigt dessen Inhalt.

{
  "betaManifestVersion": 1,
  "version": "Linux Magazine Demo 1.0",
  "entries": [
      { "url": "js/gears_init.js"},
      { "url": "js/go_offline.js"},
      { "url": "http://dcauto.gotdns.com/demo/js/jquery.js"},
      { "url": "css/styles.css"},
      { "url": "demo.html"}
    ]
}

Der Eintrag ""betaManifestVersion": 1", zu Beginn ist Pflicht. Er gibt das Format des Manifests an, damit Gears dieses verarbeiten kann.

Die Angabe "version" nimmt eine beliebige Zeichenkette auf, sollte aber zumindest dem Entwickler selbst die aktuelle Version der Datensammlung mitteilen. Beispielsweise könnte ein Exemplar des Manifests als Versionsbezeichnung "Documentation 1.0" tragen, ein anderes "Documentation 1.1". Wichtig: Enthält das Manifest auf dem Client eine andere Version als das auf dem Server, lädt Gears automatisch die in der Server-Version verzeichneten Dateien auf das lokale System herunter, um für synchronen Datenbestand zu sorgen.

Übrigens erfordert jede Änderung an der Mainfest-Datei eine neue Versionsbezeichnung. Ändert sich der Inhalt einer im Manifest angegebenen Datei, kann der Entwickler durch Änderung der Versionsbezeichnung die Synchronisation erzwingen.

Die Auflistung der gewünschten Dateien findet sich in "entries". Eine Datei lässt sich durch ihren absoluten URL referenzieren oder durch den relativen Pfad - gesehen vom Speicherort des Manifests auf dem Server. Eine Datei sollte in dieser Liste auf jeden Fall enthalten sein: "gears_init.js" gehört zur Gears-Distribution und sorgt für die korrekte Initialisierung von Gears. Unter anderem initialisiert diese Datei das Javascript-Object "google.gears" - und zwar nur, falls Gears im aufrufenden Browser installiert ist. Mit "pf google-gears" lässt sich auslesen, ob Gears verfügbar ist.

Das fertige Manifest findet seinen Platz im Wurzelverzeichnis der Webanwendung. Dort wird es von Browsern mit Gears-Installation gefunden.

Abbildung 3: Eine statische Webseite dient als Beispiel für eine Gears-Anwendung, die online und offline verfügbar ist.
Abbildung 4: Gears fragt nach, ob die Webanwendung Daten lokal speichern darf.
Abbildung 5: Die Beispielanwendung bestätigt das lokale Speichern.
Abbildung 6: Auch die Beispielanwendung mit Datenbank funktioniert dank Gears online wie offline.

Linux-Magazin kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Get it on Google Play

Deutschland

Ähnliche Artikel

  • Anwendungen für Online und Offline mit Google Gears - Teil 1

    Mit Google Gears können Webanwendungen Daten lokal zwischenspeichern, damit sie sich auch offline nutzen lassen. Linux-Magazin Online erläutert die Grundlagen dieser Technologie in zwei Artikeln.

  • Google Gears löst sich auf

    Produktmanager Ian Fette von Google hat im Gears-Blog das Geheimnis gelüftet, warum dort seit Monaten nichts mehr los ist: Die Google Gears geben ihre Selbstständigkeit als Projekt auf, weil ihre Funktionen gerade in HTML 5 und Browser einziehen.

  • HTML 5 offline

    Ein Offlinespeicher im Browser und ein Schuss HTML-5-Akrobatik ergeben interaktive Webanwendungen, die auch dann noch funktionieren, wenn die Internetverbindung abreißt. Als Kür zaubert das folgende Beispiel ein GUI, das auf Desktops wie Smartphones eine gute Figur macht.

comments powered by Disqus

Ausgabe 09/2014

Digitale Ausgabe: Preis € 6,40
(inkl. 19% MwSt.)

Artikelserien und interessante Workshops aus dem Magazin können Sie hier als Bundle erwerben.

Insecurity Bulletin

Insecurity Bulletin

Im Insecurity Bulletin widmet sich Mark Vogelsberger aktuellen Sicherheitslücken sowie Hintergründen und Security-Grundlagen. mehr...

Linux-Magazin auf Facebook