7 Plugins einbinden. 7.1 Beispiel»Die Taschenlampe«



Ähnliche Dokumente
Einführung Responsive Webdesign

Leitfaden zur ersten Nutzung der R FOM Portable-Version für Windows (Version 1.0)

Das sogenannte Beamen ist auch in EEP möglich ohne das Zusatzprogramm Beamer. Zwar etwas umständlicher aber es funktioniert

BFV Widgets Kurzdokumentation

FritzCall.CoCPit Schnelleinrichtung

Die Rückgabe kann über folgende, von uns getestete Programme / Apps vorgenommen werden: Adobe Digital Editions Sony Reader for PC Bluefire Reader

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Handbuch für die DailyDeal Entwertungs-App

Erstellen eines Screenshot

Konvertieren von Settingsdateien

Aufruf der Buchungssystems über die Homepage des TC-Bamberg

5.4 Die Benachrichtigung (Notification)

Was meinen die Leute eigentlich mit: Grexit?

Dokumentation PuSCH App. android phone

Dokumentation PuSCH App. android phone

3 Die Zielplattformen

Sich einen eigenen Blog anzulegen, ist gar nicht so schwer. Es gibt verschiedene Anbieter. ist einer davon.

ARCO Software - Anleitung zur Umstellung der MWSt

GeoPilot (Android) die App

Firefox: Die Lesezeichen im Griff

Erstellen einer digitalen Signatur für Adobe-Formulare

1 Einleitung. Lernziele. Symbolleiste für den Schnellzugriff anpassen. Notizenseiten drucken. eine Präsentation abwärtskompatibel speichern

Inhalt. 1 Einleitung AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER

Logics App-Designer V3.1 Schnellstart

SCHRITT FÜR SCHRITT ZU IHRER VERSCHLÜSSELTEN

Schrittweise Anleitung zur Erstellung einer Angebotseite 1. In Ihrem Dashboard klicken Sie auf Neu anlegen, um eine neue Seite zu erstellen.

Aufruf der Weboberflache des HPM- Warmepumpenmanagers aus dem Internet TIPPS

SEMINAR Modifikation für die Nutzung des Community Builders

icloud nicht neu, aber doch irgendwie anders

Punkt 1 bis 11: -Anmeldung bei Schlecker und 1-8 -Herunterladen der Software

Internet Explorer Version 6

Diese Ansicht erhalten Sie nach der erfolgreichen Anmeldung bei Wordpress.

Fax einrichten auf Windows XP-PC

Eine eigene Seite auf Facebook-Fanseiten einbinden und mit einem Tab verbinden.

1. Laptop: Benutzen Sie die Anleitung ab Seite 2 2. Tablet / Smartphone: Benutzen Sie die Anleitung ab Seite 4. Seite 2 Seite 4

HTML5. Wie funktioniert HTML5? Tags: Attribute:

Die Dateiablage Der Weg zur Dateiablage

Die Beschreibung bezieht sich auf die Version Dreamweaver 4.0. In der Version MX ist die Sitedefinition leicht geändert worden.

Um sich zu registrieren, öffnen Sie die Internetseite und wählen Sie dort rechts oben

Visual Basic Express Debugging

Einrichtung des Cisco VPN Clients (IPSEC) in Windows7

Updatehinweise für die Version forma 5.5.5

! " # $ " % & Nicki Wruck worldwidewruck

1. Zuerst muss der Artikel angelegt werden, damit später die Produktvarianten hinzugefügt werden können.

Universal Dashboard auf ewon Alarmübersicht auf ewon eigener HTML Seite.

Outlook Vorlagen/Templates

Tevalo Handbuch v 1.1 vom

Berechnungen in Access Teil I

Second Steps in eport 2.0 So ordern Sie Credits und Berichte

Dokumentation PuSCH App. iphone

Barcodedatei importieren

MORE Profile. Pass- und Lizenzverwaltungssystem. Stand: MORE Projects GmbH

Gimp Kurzanleitung. Offizielle Gimp Seite:

Primzahlen und RSA-Verschlüsselung

YouTube: Video-Untertitel übersetzen

Tutorial -

DOKUMENTATION VOGELZUCHT 2015 PLUS

1 Was ist das Mediencenter?

Version smarter mobile(zu finden unter Einstellungen, Siehe Bild) : Gerät/Typ(z.B. Panasonic Toughbook, Ipad Air, Handy Samsung S1):

Outlook-Daten komplett sichern

Wir machen neue Politik für Baden-Württemberg

Dokumentation PuSCH App. windows-phone

Satzhilfen Publisher Seite Einrichten

Wie importiere ich mehrere Dateien gleichzeitig?

Installationshinweise und Systemvoraussetzungen

GrafStat WIE FÜHRE ICH ONLINE-UMRAGEN DURCH?

ELO Print&Archive so nutzen Sie es richtig

Verwendung von QR-Codes zum Teilen von digitalen Rezepten in Printmedien mittels der Recipe Packaging Toolbox von My Own Cookbook

Über die Internetseite Hier werden unter Download/aktuelle Versionen die verschiedenen Module als zip-dateien bereitgestellt.

TYPO3-Zusatzkurs für

TeamSpeak3 Einrichten

Geschrieben von: Stefan Sonntag, den 26. Juni 2011 um 09:45 Uhr - Aktualisiert Sonntag, den 26. Juni 2011 um 10:12 Uhr

Anleitung BFV-Widget-Generator

eduvote Ein Umfragesystem für Lehrveranstaltungen - PowerPoint Add-In -

Handbuch zur Anlage von Turnieren auf der NÖEV-Homepage

Hardware - Software - Net zwerke

Kurzanleitung. Nutzung des Online Office von 1&1. Zusammengestellt:

Leichte-Sprache-Bilder

Arbeiten mit dem Outlook Add-In

PhotoFiltre: Fotos -tauglich verkleinern

PHPNuke Quick & Dirty

Design anpassen eine kurze Einführung

Erklärung zum Internet-Bestellschein

Der einfache Weg zum CFX-Demokonto

Werkschau Web-Präsentationen

Installationsanweisung Gruppenzertifikat

Die Post hat eine Umfrage gemacht

Der schnelle Weg zu Ihrer eigenen App

WordPress lokal mit Xaamp installieren

Outlook Erstellen einer aus einer HTML - Vorlage INHALT

1.3. Installation und Konfiguration von Filr Desktop

Was man mit dem Computer alles machen kann

Mit jedem Client, der das Exchange Protokoll beherrscht (z.b. Mozilla Thunderbird mit Plug- In ExQulla, Apple Mail, Evolution,...)

iphone-kontakte zu Exchange übertragen

2. Die eigenen Benutzerdaten aus orgamax müssen bekannt sein

PHP - Projekt Personalverwaltung. Erstellt von James Schüpbach

Autoformat während der Eingabe

ACHTUNG: Es können gpx-dateien und mit dem GP7 aufgezeichnete trc-dateien umgewandelt werden.

FuxMedia Programm im Netzwerk einrichten am Beispiel von Windows 7

Schritt 1 - Registrierung und Anmeldung

Transkript:

201 PhoneGap bringt einen standardisierten Hardwarezugriff für Smartphones mit. Aber was passiert, wenn Sie mehr wollen: Wenn Sie eine Hardware per Bluetooth ansprechen wollen oder Features der jeweiligen Plattform nutzen möchten? Denken Sie an Beispiele wie das Scannen von Barcodes oder die native Twitter-Integration in Apples ios. Für solche Anforderungen sind Plugins vorgesehen. Plugins kapseln Hardware oder native Softwarezugriffe in JavaScript und machen diese unter PhoneGap zugänglich. Das Entwickeln eines Plugins setzt daher immer Plattformcode voraus für das ios etwa Objective-C. Eine zusätzliche JavaScript- Datei bindet dabei die Aufrufe an die nativen Funktionen. Damit Sie nicht alles selber entwickeln müssen, stellt das GitHub-Verzeichnis 1 ein zentrales Repository für Plugins dar. Allerdings findet sich auch so manches Plugin über eine Google-Suche. Ich habe für Sie drei Plugins ausgewählt, die wir uns näher anschauen wollen. Dabei lernen Sie, wie Plugins für die Plattformen Android und ios einzubinden und aufzurufen sind. Es handelt sich zum Anfang um die beliebte Taschenlampen- App, also den Zugriff auf die LED des iphones. Danach wird es seriöser mit dem Einsatz eines Barcodescanners. Abschließen möchte ich mit einem Projekt, das die Möglichkeiten von Plugins sehr gut beschreibt: einem Augmented-Reality-Viewer, der mit nur drei Zeilen JavaScript-Code einzubinden ist und damit zeigt, wie einfach Komplexität aus Anwendungen genommen werden kann. Zusammengefasst mit Plugins macht die Anwendungserstellung mit Phone- Gap noch mehr Spaß. Diese bieten die oft vermissten Features der nativen Plattformen. Aber Achtung: Damit entfernen Sie sich auch vom Prinzip»Ein Sourcecode = viele Plattformen«. 7.1 Beispiel»Die Taschenlampe«Seit der vierten Gerätegeneration ist Apples iphone mit einer LED als Blitz ausgestattet, die man auch prima als Taschenlampe nutzen kann. Diese Funktion werden wir nun mithilfe des»torch«-plugins für PhoneGap nachstellen. Ganz ne- 1. https://github.com/phonegap/phonegap-plugins.git

202 benbei lernen wir die grundlegende Nutzung eines Plugins kennen. Wichtig ist dabei zu wissen, dass es sich hier ausschließlich um ein ios-feature handelt. Diese Funktion ist nicht unter anderen Plattformen mit diesem Plugin möglich. Für den Einstieg ist es ein gutes kompaktes Beispiel. 7.1.1 Die Zutaten Das PhoneGap-Torch-Plugin ist in der offiziellen Plugin-Sammlung 2 erhältlich. Da es sich hier um ein GitHub-Repository handelt, können Sie es wahlweise klonen oder als Zip-Datei herunterladen. Natürlich darf PhoneGap auch nicht fehlen. Für den weiteren Verlauf entpacken Sie bitte die Zip-Datei. Für das folgende Rezept benötigen wir Dateien aus dem Plugin-Ordner Torch. Diesen finden Sie unterhalb des Ordners iphone in der Zip-Datei bzw. im geklonten Repository. Abb. 7 1 Torch-Plugin-Ordner Alternativ können Sie auch die aktuelle Fassung im GitHub-Repository dieses Buches 3 finden. Jetzt können wir mit der Taschenlampen-App starten. 7.1.2 Das Rezept Erstellen Sie als Erstes ein neues PhoneGap-Projekt. Als Namen vergeben wir hier meinetaschenlampe. Daher würden wir das Projekt mit folgendem Aufruf auf der Kommandozeile anlegen: create meinetaschenlampe de.phonegapbuch.meinetaschenlampe meinetaschenlampe Jetzt gibt es ein neues XCode-Projekt. Starten Sie also XCode und öffnen die Projektdatei. Da wir ein Plugin nutzen möchten, sind noch Dateien in das Projekt hinzuzufügen. Zunächst kopieren Sie bitte die Datei Torch.js in den www-ordner. Hiermit haben Sie sozusagen die API-Bibliothek für das Plugin bereitgestellt. Wir könnten nun bereits loslegen, die vorhandene Datei index.html mit Plugin-Aufrufen in JavaScript anzupassen. Allerdings fehlt noch die notwendige Erweiterung auf der 2. https://github.com/phonegap/phonegap-plugins.git 3. https://github.com/phonegapbuch/plugins.git

7.1 Beispiel»Die Taschenlampe«203 Objective-C-Seite. Dafür nutzen Sie die Dateien Torch.h und Torch.m aus der Zip- Datei und kopieren diese in den Plugins-Ordner Ihres Taschenlampenprojekts. Abb. 7 2 XCode-Projektübersicht beim Torch-Beispiel Bevor es jedoch losgeht, fehlt noch eine Kleinigkeit, denn PhoneGap weiß noch nichts von dem Plugin, in unserem Fall von den Implementierungen auf der Objective-C-Seite. Damit wir gleich keine Fehlermeldung bekommen, muss noch die Datei Cordova.plist erweitert werden. Sie finden diese Datei im Resources-Ordner des XCode-Projekts. Im Bereich Plugins erstellen Sie einen neuen Schlüssel mit dem Namen Torch. Als Wert wird hier auch Torch hinterlegt. Damit weiß PhoneGap nun auch von dem Objective-C-Teil und kann ihn beim Kompilieren der App verwenden. Jetzt kann es endlich mit dem Code losgehen. Um das Plugin schnell auszuprobieren, können Sie das Listing 7 1 nutzen. Kopieren Sie dabei das gesamte Listing in die Datei index.html. Beachten Sie bitte, dass ein Test im Simulator natürlich ohne Erfolg sein wird, da nur ein echtes iphone 4 oder 5 eine LED besitzt.

204 Abb. 7 3 Cordova.plist-Ansicht in XCode <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/tr/html4/strict.dtd"> <html> <head> <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no;" /> <meta http-equiv="content-type" content="text/html; charset=utf-8"> <script type="text/javascript" charset="utf-8" src="cordova-2.0.0.js"></script> <script type="text/javascript" charset="utf-8" src="torch.js"></script> <script type="text/javascript" charset="utf-8"> function onbodyload() { document.addeventlistener("deviceready", ondeviceready, false); }; function ondeviceready() { setinterval(function() { document.getelementbyid("on").innerhtml = window.plugins.torch.ison? "AN" : "AUS"; }, 500); }; </script> </head> <body onload="onbodyload()"> <h1 style="font-family:helvetica Neue">Taschenlampe</h1> <div>die Lampe ist: <span id="on"></span></div>

7.1 Beispiel»Die Taschenlampe«205 <button style="background-color:lightgreen;width:100%;height:40px; margin-top:50px;" onclick="window.plugins.torch.turnon()">an</button> <button style="background-color:red;width:100%;height:40px; margin-top:100px;" onclick="window.plugins.torch.turnoff()">aus</button> </body> </html> Listing 7 1 Torch-Plugin-Beispiel Jetzt ist alles vorbereitet und wartet auf Ausführung. Starten Sie das Erstellen und Deployen auf Ihr angeschlossenes iphone. Nach kurzer Zeit sollten Sie Folgendes sehen: Abb. 7 4 Taschenlampen-Menü Nun können Sie mit den beiden Flächen An und Aus die LED schalten. Glückwunsch, Ihr erstes Plugin ist erfolgreich eingebunden. Ich möchte noch kurz auf den Code eingehen, der das Plugin ansteuert. Die Datei index.html hat wie in anderen Projekten auch erst einmal wieder die cordova-2.0.0.js-datei geladen. Danach folgt dann die Datei Torch.js, die für die Funktionen des Plugins zuständig ist. Das obligatorische Event deviceready wird abgewartet, um dann ein Intervall von 500 ms festzulegen. Dieses Intervall beeinflusst den Wert des HTML-Containers, der mit der ID on versehen ist. Hier ist dann auch schon der erste Aufruf des Plugins zu sehen: window.plugin.torch.ison. Dieser Aufruf im Intervall bewirkt, dass alle 500 ms abgefragt wird, ob die LED an ist. Je nach Status weist dann der ternäre Operator? den Wert AN oder AUS zu. Dieser Wert wird im HTML-Container mit der ID on angezeigt. Zum eigentlichen

206 Ein- bzw. Ausschalten der LED wird auf den beiden Buttons im HTML-Body ein onclick mit der Plugin-Funktion window.plugins.torch.turnon() bzw. turnoff() hinterlegt. So einfach ist die Nutzung eines Plugins. Sicherlich ist eine Taschenlampe keine große Sache, aber das Beispiel zeigt sehr gut, wie einfach Plugins genutzt werden können. In den nächsten beiden Abschnitten werden Sie ernsthaftere Beispiele kennenlernen. 7.2 Beispiel»Barcode-Reader«Nach dem Freizeitbeispiel der Taschenlampe möchte ich nun mit Ihnen ein Businessbeispiel für ein Plugin durchgehen: eine Barcode-Leser-Anwendung. Barcodes finden sich überall. Strichcodes machen es uns einfach, lange Zahlen oder auch kleine Datenmengen schnell zu erfassen. Ein Beispiel gefällig? Sie können eine Anwendung zur DVD-Archivierung mit einem Barcodescanner zur einfachen Erfassung erweitern. Damit braucht der Anwender nicht erst den Titel jeder DVD einzutippen der EAN13-Strichcode und ein Webservice reichen aus. Abb. 7 5 EAN13-Strichcode Ein einfaches Scannen übernimmt das lästige Eintippen der Daten. Auch die Verwendung von QR-Codes nimmt zu. Diese Punkt-Quadrate können nicht nur eine Zahlenfolge darstellen, sie speichern auch noch mehr Daten. Abb. 7 6 Beispiel QR-Code Zum Beispiel können damit ganze Hyperlinks oder Visitenkarten abgebildet werden. Daher ist das Scannen und Verarbeiten von Strichcodes sicherlich für viele Anwendungen interessant. PhoneGap hat zwar keinen Barcodescanner in der API integriert, aber mittels eines Plugins können wir diese Funktionalität erreichen. Die verwendete Scan-Engine unterstützt dabei folgende Formate: