Programmierung mobiler Geräte



Ähnliche Dokumente
Apps entwickeln mit HTML und Javascript

Installation von NetBeans inkl. Glassfish Anwendungs-Server

Einrichten des IIS für VDF WebApp. Einrichten des IIS (Internet Information Server) zur Verwendung von Visual DataFlex Web Applications

2. ERSTELLEN VON APPS MIT DEM ADT PLUGIN VON ECLIPSE

Revit Modelle in der Cloud: Autodesk 360 Mobile

Einführung in die Cross-Plattform Entwicklung Zugriff auf Sensoren mit dem Intel XDK

Installation des Authorware Webplayers für den Internet Explorer unter Windows Vista

Installation OMNIKEY 3121 USB

ecaros2 Installer procar informatik AG 1 Stand: FS 09/2012 Eschenweg Weiterstadt

TechCommToGo (DE) conbody section title TechCommToGo - so einfach wie Kaffee machen. / title / section. section p image / p

Internet Explorer Version 6

Präsentation Von Laura Baake und Janina Schwemer

Lokale Installation von DotNetNuke 4 ohne IIS

App Entwicklung mit Hilfe von Phonegap. Web Advanced II - SS 2012 Jennifer Beckmann

Step by Step Webserver unter Windows Server von Christian Bartl

Cross-Platform Apps mit HTML5/JS/CSS/PhoneGap

Version 0.3. Installation von MinGW und Eclipse CDT

Sicherheit im Internet

Mac OS X G4 Prozessor 450 MHz (G5- oder Intelprozessor empfohlen) 512 MB RAM. zusätzliche Anforderungen Online-Version

easytermin App easysolution GmbH 1

Windows Server 2008 (R2): Anwendungsplattform

Clientkonfiguration für Hosted Exchange 2010

Zeiterfassung mit Aeonos. Bedienungsanleitung für die App

Windows Verbindung mit WLAN BZPflege trennen Verbindung mit WLAN EDU-BZPflege automatisch erstellen... 30

Installation und Inbetriebnahme von Microsoft Visual C Express

Leitfaden zur Installation von Bitbyters.WinShutdown

Der schnelle Weg zu Ihrer eigenen App

Installation der SAS Foundation Software auf Windows

Anleitung mtan (SMS-Authentisierung) mit SSLVPN.TG.CH

MetaQuotes Empfehlungen zum Gebrauch von

Teamschool Installation/ Konvertierungsanleitung

Hallo, Anmeldung auf der Office-Webplattform: Seite 1 von 7 Office 365 Pro Plus

Installation des CMS-Systems Contao auf einem Windows-Rechner mit XAMPP

Musterlösung für Schulen in Baden-Württemberg. Windows Basiskurs Windows-Musterlösung. Version 3. Stand:

disk2vhd Wie sichere ich meine Daten von Windows XP? Vorwort 1 Sichern der Festplatte 2

Mobile Angebote Strategie einer Verwaltung. Freie und Hansestadt Hamburg Dr. Ursula Dankert

PRESENTEC C-TRACK FÜR BLACKBERRY 8800 & BLACKBERRY CURVE 8310 FUNKTIONSBESCHREIBUNG

ecaros-update 8.2 Update 8.2 procar informatik AG 1 Stand: DP 02/2014 Eschenweg Weiterstadt

Anleitung zum Prüfen von WebDAV

SILBER SURFER. PC-Treffen der Arbeiterwohlfahrt, Ortsverein Sehnde. PC Internet / Cloud. Leitfaden zur Schulung

Dieses Dokument soll dem Administrator helfen, die ENiQ-Software als Client auf dem Zielrechner zu installieren und zu konfigurieren.

WinVetpro im Betriebsmodus Laptop

Bitte beachten Sie die Installations-/Systemvoraussetzungen und freigegebenen Betriebssysteme.

Installationsanleitung. Lohn Manager 9.5

Anleitung zur Installation von SFirm 3.1 inklusive Datenübernahme

Vorarlberger Standardschulinstallation Anbindung von Android Mobile Devices

Client-Systemanforderungen für Brainloop Secure Dataroom ab Version 8.30

Whitepaper. Produkt: combit Relationship Manager. SQL Server 2008 R2 Express um Volltextsuche erweitern. combit GmbH Untere Laube Konstanz

TELIS FINANZ Login App

Mobile Kartenanwendungen im Web oder als App?

Verwendung des Terminalservers der MUG

4D Server v12 64-bit Version BETA VERSION

Wo finde ich die Software? - Jedem ProLiant Server liegt eine Management CD bei. - Über die Internetseite

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

Schrittweise Anleitung zur Installation von Zertifikaten der Bayerischen Versorgungskammer im Mozilla Firefox ab Version 2.0

Step by Step Remotedesktopfreigabe unter Windows Server von Christian Bartl

Tutorial Windows XP SP2 verteilen

Installation Blockdruck WEB. Version 3.1.1

Intrexx auf einem Windows 2012 Server

Lesen und Kaufen von ebooks über den Online-Shop Ihrer Buchhandlung

Daten fu r Navigator Mobile (ipad)

Formular»Fragenkatalog BIM-Server«

B4 Viper Connector Service Installationsanleitung Stand:

Logics App-Designer V3.1 Schnellstart

Client-Systemanforderungen für Brainloop Secure Dataroom ab Version 8.30

.htaccess HOWTO. zum Schutz von Dateien und Verzeichnissen mittels Passwortabfrage

Anleitung für den Zugriff auf Mitgliederdateien der AG-KiM

Umstellung VPSMail von Java-Web-Start auf Installer

Installation einer C++ Entwicklungsumgebung unter Windows --- TDM-GCC und Eclipse installieren

Anleitung zur Installation der DataWatch Software auf einem LINUX System ohne grafische Oberfläche

SFKV MAP Offline-Erfassungstool. Installationsanleitung

Einrichtung des Cisco VPN Clients (IPSEC) in Windows7

Hinweise zur Installation der USB Treiber für Windows XP 32bit

Folgen Sie bitte genau den hier gezeigten Schritten und achten Sie auf die korrekte Eingabe der Daten.

Android Remote Desktop & WEB

Installationsanleitung INFOPOST

Anleitung für Zugriff auf Hosted Zarafa

Was tun, vor der Installation? Betriebssystem & Hardware Kontrolle

Windows / Mac User können sich unter folgenden Links die neueste Version des Citrix Receiver downloaden.

e-books aus der EBL-Datenbank

Whitepaper. Produkt: combit address manager / combit Relationship Manager. Datenabgleich zwischen Notebook und Desktop-PC / Server

Medea3 Print-Client (m3_print)

ANLEITUNG NETZEWERK INSTALATION

Konvertieren von Settingsdateien

Anleitung. Einrichtung vom HotSync Manager für den Palm 1550 bis 1800 unter Windows 7. Palm SPT 1500 / 1550 Palm SPT 1700 / Bits & Bytes Seite 1

Fernzugang Uniklinikum über VMware View

Version White Paper ZS-TimeCalculation und die Zusammenarbeit mit dem iphone, ipad bzw. ipod Touch

Brainloop Secure Client für ios Version 1.5 Schnellstartanleitung

DeltaVision Computer Software Programmierung Internet Beratung Schulung

Intrexx unter Windows Server 2008

Webseiten werden mobil Planung geht vor

Um zu prüfen welche Version auf dem betroffenen Client enthalten ist, gehen Sie bitte wie folgt vor:

METTLER TOLEDO USB-Option Installation der Treiber unter Windows XP

1 Voraussetzungen für Einsatz des FRITZ! LAN Assistenten

Anleitung. Lesezugriff auf die App CHARLY Termine unter Android Stand:

Die Installation des GeoShop Redirector für IIS (Internet Information Server, Version 4.0, 5.0 und 6.0) umfasst folgende Teilschritte:

Installationshandbuch

Anwendungspaket Basisautonomie

FritzCall.CoCPit Schnelleinrichtung

Transkript:

Programmierung mobiler Geräte SoSe 2015 Hybride Apps Markus Berg Hochschule Wismar Fakultät für Ingenieurwissenschaften Bereich Elektrotechnik und Informatik http://mmberg.net

2 Letzte Woche: Webapps Nativ Web

3 Heute: Hybride Apps Nutzung von Webtechnologien in Kombination mit einem nativen Container Nativ Webapp

4 Idee Native App mit einem WebContainer, der HTML-Seiten darstellen kann Anzeige einer Webapp Keine Darstellung von URL-Leiste etc. (Browser nicht erkennbar) Nativer Code zum Zugriff auf Hardware bzw. spezifische Funktionen des Betriebssystems Betriebssystemspezifische Implementierungen einer API für hybride Apps Java Script Funktionen zur Interaktion der Webseite mit dem nativen Teil der App Nativer Teil vermittelt zwischen dem Betriebssystem und dem Webcontainer (bzw. der Webapp im Webcontainer)

5 Hybrid App

6 Hybrid App

7 Vorteile Store-Sichtbarkeit Apps verkaufbar Eine einzige Quellcodebasis Im Gegensatz zur Webapp keine Internetverbindung notwendig HTML-Datei wird mit ausgeliefert (statt sie auf einem Server bereitzustellen) Trotz Verwendung von Webtechnologien Zugriff auf Gerätefunktionen möglich

8 Nachteile Geringere Performance Kommunikation über Zwischenschicht (Webkomponente) Kein natives Look & Feel Fühlt sich nicht immer echt an (subjektiv), d.h. Nutzern fällt der Unterschied zu nativen Apps auf Nach wie vor interpretierte Sprache Fehler fallen erst zur Laufzeit auf Limitierte Unterstützung durch IDE Browser interpretieren Code teilweise unterschiedlich Wird meist vom Framework kompensiert

9 Prognose Laut Gartner werden 2016 50% aller Apps hybrid sein [http://www.gartner.com/newsroom/id/2324917] Prominente Beispiele LinkedIn Netflix BBC (BBC Olympics)

10 Phonegap vs. Cordova 2009 erfunden als Phonegap von Natobi Entwickelt sich schnell zu einem der bekanntesten Frameworks für Hybride Apps 2011 aufgekauft von Adobe Adobe übergibt Phonegap an Apache Aus rechtlichen Gründen Apache Open Source Version umbenannt in Cordova Das neue Phonegap basiert nun auf Cordova Beinhaltet zusätzliche Tools U.a. Build Service (Cloud Compliation für andere Plattformen)

11 Phonegap: Features http://phonegap.com/about/feature/

12 Setup: Android Wenn nicht vorhanden, Java (JDK 7) installieren Android SDK installieren und Systemimage herunterladen Am besten Android Studio installieren (benötigen wir später ohnehin) http://developer.android.com/sdk/index.html SDK Manager starten und tools, platform- tools, build- tools sowie eine Android Version (Plattform SDK + System-Image) hinzufügen Für Phonegap benötigen wir API 19 (Android 4.4.2) Wir wählen das SDK, und sowohl das x86- als auch das ARM System Image Evtl. HAXM (Intel Hardware Accelerated Execution Manager) installieren Hardware-unterstützte Virtualisierungsengine (Hypervisor) In Verbindung mit x86 Android-Images Achtung: nicht auf alten Prozessoren ohne Intel Virtualization Technology

13 Setup: Phonegap Siehe: http://docs.phonegap.com/en/4.0.0/guide_platforms_android_index.md.html#android %20Platform%20Guide Apache Ant installieren und Umgebungsvariable hinzufügen Node.js installieren https://nodejs.org/ Phonegap hinzufügen http://phonegap.com/install/ sudo npm install - g phonegap Umgebungsvariablen anpassen (Bsp.: Mac OS) export PATH=$PATH:/Users/markus/Library/Android/sdk/tools export PATH=$PATH:/Users/markus/Library/Android/sdk/platform- tools Virtual Device hinzufügen (AVD Manager) Mit SDK 19

14 Phonegap: Projekt anlegen Projekt anlegen phonegap create HelloGap cd HelloGap phonegap platform add android phonegap build android #only build android... phonegap build #...or build all added platforms Starten im Emulator Erst Emulator per AVD starten, dann: phonegap run android - - emulator Starten auf Gerät Unter Windows müssen erst entsprechende USB-Treiber installiert werden http://developer.android.com/tools/extras/oem-usb.html USB Debugging auf Gerät aktivieren Gerät verbunden? App ausführen: adb devices phonegap run android

15 Phonegap Code liegt im Ordner www Startseite der Anwendung wird in config.xml eingestellt <content src="quotes/index.html" /> Referenziert z.b. /HelloGap/ www/quotes/index.html Nativer Code wird im Ordner platforms erzeugt APK wird im Ordner out/production angelegt

Markus Berg Programmierung mobiler Geräte Übung: Demo Wir starten die Beispiel-App 16

17 Übung: Eigene Inhalte Wir kopieren unsere Zitate-App der letzten Woche in den Ordner www (Pfad sollte nur aus Kleinbuchstaben bestehen) und starten sie per Phonegap phonegap run android - - emulator Wir haben nun eine hybride App erzeugt! Sie liegt als apk vor Sie lässt sich im PlayStore veröffentlichen Wir sehen keinen Browser Wir mussten keinen nativen Code verwenden Wir haben ein Icon auf dem Homescreen

18 Phonegap & AJAX Oft kein Zugriff auf Inhalte aus dem Web möglich Z.B. REST-Interfaces Daher im ersten Schritt der Anwendung Eventhandler für mobileinit definieren und dort: CORS aktivieren (Cross Origin Resource Sharing) AJAX Requests zu fremden Servern ermöglichen $(document).bind("mobileinit",function() { $.support.cors = true; $.mobile.allowcrossdomainpages = true; });

19 Zusammefassung: Hybride App erzeugen Wir erzeugen eine hybride App aus unserer Zitate- Webapp phonegap create QuotesApp cd QuotesApp phonegap platform add android phonegap build android Kopieren der Quelldateien nach www Ggf. Anpassen der config.xml (Startseite) Ggf. aktivieren von CORS Starten phonegap run android - - emulator

20 Plugins Ein großer Vorteil von hybriden Apps ist das Ausführen von nativem Code Hierzu müssen Aufrufe in der Web-Welt an Android weitergereicht werden Kommunikation der WebView mit der nativen Plattform Dies geschieht mit Hilfe von Phonegap Plugins z.b. Kompass phonegap plugin add org.apache.cordova.device- orientation z.b. Accelerometer phonegap plugin add org.apache.cordova.device- motion Fügt Code im Ordner plugins hinzu Nativer Code Javscript

21 Phonegap-JavaScript Phonegap-JS laden (in HTML-Datei, z.b. index.html) <script src="../cordova.js"/> <script src="../cordova_plugins.js"/> Device-Ready-Listener hinzufügen (vorher kein Zugriff auf Phonegap/Gerätefunktionen möglich/garantierbar) $(function() { document.addeventlistener("deviceready", ondeviceready, false); }); EventHandler definieren function ondeviceready() { //do Phonegap- related work here };

22 Übung: Beschleunigung Wir erweitern die Zitate-App um folgende Funktionalität: Bei hoher Beschleunigung in z-achse soll das nächste Zitat geladen werden In Ruhelage ist der Wert 9,81 Wird kleiner im Fall X und Y sind in Ruhelage 0 Wenn Handy flach auf dem Tisch liegt Lässt sich nicht im Emulator simulieren http://i.stack.imgur.com/eyibk.jpg

23 Übung: Beschleunigung Plugin installieren phonegap plugin add org.apache.cordova.device- motion Plugin nutzen navigator.accelerometer.watchacceleration(onsuccess, onerror, options); Naives Ermitteln von Werten, sodass Aktion nur ausgelöst wird, wenn Gerät kurz und kräftig nach unten/ schräg hinten bewegt wird if(acceleration.x<5 && acceleration.z<5.5 && acceleration.y<7){... }

24 Kleine Demonstration Integration des Beschleunigungssensors nicht sichtbar (logisch!) Integration eines Plugins zum Teilen des Zitates per SMS, Mail etc. Nutzen wir auch im Praktikum

25 Praktikum: Teil 1 Schritt 1: Erzeugen Sie eine hybride App aus der TVApp des letzten Praktikums!

26 Praktikum: Teil 2 Erweitern Sie die App nun um die Funktionalität, beim Anzeigen der Details kurz zu vibrieren Fügen Sie einen Button zum Teilen der ausgewählten Sendung (z.b. per Whatsapp) hinzu > phonegap plugin add https://github.com/eddyverbruggen/ SocialSharing- PhoneGap- Plugin.git > phonegap prepare Abgabe bis zum 28.04.2015

Markus Berg Programmierung mobiler Geräte Nächste Woche Eine kurze Java-Wiederholung als Vorbereitung zu Android http://freewallsource.com/programming-wallpaper-19591.html/programming-wallpaper-19591 27