Inhaltsverzeichnis
Anmerkung der Redaktion: Der Dienst wurde 2020 eingestellt. Weitere Informationen bei Adobe.
PhoneGap ist ein kostenloses Opensource-Tool, mit dem sich in HTML geschriebene
Web-Apps via Kommandozeile in native App-Container verpacken lassen. PhoneGap bringt außerdem Javascript-Erweiterungen mit, um in der Web-App auf Gerätefunktionen wie GPS oder Kamera zuzugreifen.
Dieses Vorgehen bringt gegenüber tatsächlicher nativer Entwicklung einige Vorteile mit sich:
- HTML lässt sich leicht aus Redaktionsprozessen heraus generieren.
- Sobald mehr als ein mobiles Betriebssystem unterstützt werden soll, entfällt zudem die Mehrfachentwicklung und -pflege der systemspezifischen Apps.
Da das Verfahren für eigentlich alle aktuell relevanten mobilen Betriebssysteme funktioniert, lässt sich hier erheblicher Aufwand einsparen.
Hinweis: Man stolpert im PhoneGap-Kontext immer wieder über die Bezeichnung Apache Cordova. Adobe PhoneGap ist eine Distribution der Opensource-Software Apache Cordova (analog z. B. Ubuntu vs. Linux). In Anleitungen kann man meist beide gedanklich gleich setzen. PhoneGap bringt allerdings einige zusätzliche Features mit, z. B. den Zusammenbau der App remote auf einem Adobe-Server.
Installation
Voraussetzung für jede Ziel-Plattform ist das jeweilige native Software Development Kit (SDK), das zur lokalen Verarbeitung auf dem Entwicklungs-PC installiert sein muss. Eine weitere, möglicherweise schmerzhafte Bedingung: Für Apple iOS funktioniert das Ganze nur auf einem Mac mit OS X. Mithilfe der build remote-Option können Sie auf das SDK verzichten, müssen dann aber Adobe Ihren Quellcode anvertrauen.
PhoneGap wird über das Tool Node Package Manager (NPM) installiert. Dazu muss man zunächst node.js installieren, das den NPM beinhaltet. Die einzelnen Schritte sind auf https://npmjs.org/ und http://phonegap.com/install/ erläutert.
Keine Angst vor der Installation: Wir haben PhoneGap sowohl unter Windows als auch unter OS X ohne nennenswerten Aufwand zum Laufen bekommen.
Verwendung
Um das Werkzeug zu testen, lässt sich via Kommandozeile schnell ein PhoneGap-Projekt erzeugen. Anschließend kopieren Sie Ihr eigenes HTML-Projekt ins neu angelegte Projektverzeichnis, dort in das Unterverzeichnis www. Der Kommandozeilen-Aufruf phonegap local run blackberry erzeugt eine native Blackberry-App und startet den Simulator. Bei Bedarf fügen Sie dem Projekt, ebenfalls via Kommandozeile, Geräteschnittstellen hinzu. Wir zeigen das an einem kleinen Beispiel.
Ein Projekt
Ein iOS-Beispiel für ein Projekt, das den Verbindungsstatus (“bin ich im WLAN?”) abfragen können soll und deswegen die Netzwerk-Geräteschnittstelle einbindet:
> phonegap create meineProjektId de.mein.namespace "Mein Projekttitel" > cd meineProjektId > phonegap local plugin add org.apache.cordova.network-information > phonegap local run ios
Wie man in Javascript die Geräteschnittstellen dann anspricht, ist recht gut online dokumentiert.
Um ein echtes Projekt abzurunden, sind i. d. R. einige weitere Schritte notwendig: das eigene App-Icon, Hersteller- und Versionsangaben sowie Distributionszertifikate steuern Sie der Projektkonfiguration je nach Bedarf bei.
Fazit
Gerade die Möglichkeit, die PhoneGap-Produktion in einen Skriptablauf einzubinden, zeichnet das Werkzeug als möglichen Baustein von automatisierten Redaktionsabläufen aus. Natürlich muss man gegenüber der nativen Entwicklung Abstriche bei Performance und Systemintegration machen – die Web-App wird nur verpackt, nicht ersetzt -, aber das ist gerade in unserem textlich-redaktionell geprägten App-Umfeld nicht immer ausschlaggebend. Wir haben Informationsprodukte z. B. für iOS, Blackberry X und Windows Phone 7 generiert und werden das System auch weiter nutzen und empfehlen.