Mobile App Development



Ähnliche Dokumente
Mobile App Development. - Einführung -

Mobile App Development. - Einführung -

Walkabout: Location Based Services mit Android und dem Google Phone

1. Software-Plattform Android Android. Was ist Android? Bibliotheken, Laufzeitumgebung, Application Framework

Thomas Künneth. Android 3. Apps entwickeln mit dem Android SDK. Galileo Press

App Entwicklung für Android F O R T G E S C H R I T T E N E P R O G R A M M I E R U N G I N J A V A

SEMINARVORTRAG ANDROID ENTWICKLUNG ETIENNE KÖRNER EMBEDDED SYSTEMS SS HSRM

1. Software-Plattform Android Android. Was ist Android? Managed Code, Angepasste Java Virtual Machine

Android GUI Entwicklung

ANDROID. Analyse der Android Plattform. Andre Rein, Johannes Florian Tietje. 28. Oktober FH-Gieÿen-Friedberg Android Praktikum

2. ERSTELLEN VON APPS MIT DEM ADT PLUGIN VON ECLIPSE

Smartphone Entwicklung mit Android und Java

Einführung in die Android App-Entwicklung. Patrick Treyer und Jannis Pinter

Datenhaltung für Android. Model First

Mobile Application Development

Seminar Multimediale Werkzeuge Sommersemester 2011

Mobile App Development. - Alarm -

Auf einen Blick. Elementare Anwendungsbausteine. Telefonfunktionen nutzen. Dateien und Datenbanken. Organizer und Multimedia

Inhaltsverzeichnis. Apps für Android entwickeln

App-Entwicklung für Android

Einführung in Android. 9. Dezember 2014

MOBILE ENTERPRISE APPLICATION PLATFORM (MEAP)

Android Freund oder Feind

Was ist Windows Azure? (Stand Juni 2012)

GameGrid mit BlueJ Seite 1

JDroidLib mit Eclipse (Mac/Linux/Windows)

>> Hallo mobile Welt << Einstieg in die Android-App-Programmierung

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

MOBILE ENTERPRISE APPLICATION PLATFORM (MEAP)

eridea AG Installation Eclipse V 1.4

Apps Programmierung von Android-Smartphones

Einführung in Eclipse und Java

Vorwort Android - eine offene, mobile Plattform 21

Apps-Entwicklung mit Eclipse

Installation und Aktivierung von Norton Mobile Security ios

Installation von NetBeans inkl. Glassfish Anwendungs-Server

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

Konzept zur Push Notification/GCM für das LP System (vormals BDS System)

Inhalt. 3 Kurzeinführung 15 Das Android-SDK installieren 15 Einen PATH zu den Werkzeugen einrichten 16 Eclipse installieren 16

eridea AG Installation Eclipse V 1.1

Die Programmiersprache Java. Dr. Wolfgang Süß Thorsten Schlachter

MetaQuotes Empfehlungen zum Gebrauch von

Entwicklung einer App mit FIspace How to get started?

In 15 einfachen Schritten zum mobilen PC mit Paragon Drive Copy 10 und Microsoft Windows Virtual PC

Mobile Information und Kommunikation - Smartphones und Tablet-PC -

Apps-Entwicklung mit Netbeans

Programmieren für mobile Endgeräte SS 2013/2014. Dozenten: Patrick Förster, Michael Hasseler

Informatik Sommercamp 2012

Naviki GPS-Anwendungsentwicklung für Mobiltelefone

Android Mobile Systeme - Android

Apps in ArcGIS: Neuerungen. 18. Juni 2015

Einführung zu den Übungen aus Softwareentwicklung 1

BlackBerry Device Service

LaVida. Mobile Endgeräte. Andreas Neupert

1 Der Einstieg in Java für Android

Von Windows-Forms zu WPF mit Expression Blend? Thomas Müller conplement AG Nürnberg

Einführung in Android

Speaker. Dominik Helleberg. Mobile Development Android / Embedded Tools.

AppOcalypse now! Die Zukunft des Intranets ist Mobile Jussi Mori

Installation der 4Dv12sql Software für Verbindungen zum T.Base Server

APPS FÜR ANDROID ENTWICKELN

Mobile App development mit Xamarin. Christian Hassa Andreas Willich TechTalk Software AG

Mit Cloud Power werden Sie zum

Arno Becker Marcus Pant. Android. Grundlagen und Programmierung. I dpunkt.verlag

Programmieren für mobile Endgeräte SS 2013/2014. Dozenten: Patrick Förster, Michael Hasseler

Apps entwickeln mit HTML und Javascript

Präsentation Von Laura Baake und Janina Schwemer

ANLEITUNG EBOOKS. 1. Der Kauf von ebooks über den Onlineshop

Architekturen mobiler Multi Plattform Apps

Vaadin TouchKit. W3L AG

Eclipse einrichten. Wechseln Sie in Ihr EclipseInstallationsverzeichnis... > cd $Eclipse_Verzeichnis$ >./eclipse. und starten Sie das Programm.

In 12 Schritten zum mobilen PC mit Paragon Drive Copy 11 und Microsoft Windows Virtual PC

Einführung in die Android-Entwicklung

Bewusster Umgang mit Smartphones

zwanzignull8 DIE MODULARE VERTRIEBS SOFTWARE im Einsatz für die Sto SE & Co KGaA info@1a-p.com (0)

Mobile Security (Android OS) Ein Vortrag zur Sensibilisierung eines Benutzers im Umgang mit Smartphones und Tablets mit dem Android OS.

Schritt-Schritt-Anleitung zum mobilen PC mit Paragon Drive Copy 10 und VMware Player

Übung: Verwendung von Java-Threads

Die Bürgermeister App. Mein Bürgermeister hört mich per App.

Dokumentation zu Pocket NeuroNet

Cross-Platform Mobile mit.net

1 Was ist das Mediencenter?

Einführung in Betriebssysteme

DataSpace 2.0 Die sichere Kommunikations-Plattform für Unternehmen und Organisationen. Your Data. Your Control

Vorwort Azure Cloud Computing mit Microsoft Danksagungen Kontakt zum Autor... 13

0. Einführung. C und C++ (CPP)

Erste Erfahrungen mit Android

Visualisierung und Erfassung von Echtzeit-Verkehrsdaten mit Smartphones

MOBILE ON POWER MACHEN SIE IHRE ANWENDUNGEN MOBIL?!

Update Information. Independence Pro Software Suite 3.0 & Sound Libraries

In 15 Schritten zum mobilen PC mit Paragon Drive Copy 11 und VMware Player

Plattformen mobiler Endgeräte Windows Phone, ios, Android

JEAF Cloud Plattform Der Workspace aus der Cloud

Eine App, viele Plattformen

Wine - Windows unter Linux

ROFIN App Benutzerhandbuch. Version 1.0

Android Testautomatisierung mit dem Framework Robotium

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

Expertenumfrage: Mobile Applications

Transkript:

Mobile App Development - Einführung -

Inhalt Organisatorisches Vorlesungsinhalt Mobile Geräte Android Architektur App Aufbau Praktikum

Organisatorisches 4 SWS, 5 ECTS 2 Vorlesung / 2 Praktikum 10 Wochen 3V / 1P 5 Wochen Projekt

Organisatorisches Prüfungsleistung: Übungen + Projekt Voraussetzungen Übungsgruppen Leihgeräte

Inhalt Grundlagen Entwicklungsumgebung & Tool Chain Activities & Lebenszyklus Benutzeroberflächen Prof. Dr. Martina Lehser Nils Steinbiß, M. Sc. Christoph Karls, M. Sc.

Inhalt Kommunikation zwischen Anwendungskomponenten Services & Threads Persistenz Sensoren & Aktoren Prof. Dr. Martina Lehser Nils Steinbiß, M. Sc. Christoph Karls, M. Sc.

Mobile Geräte

Mobiler Datenverkehr 10,8 monatliches mobiles Datenaufkommen in Exabyte 6,9 weltweit 4,2 0,6 1,3 2,4 2011 2012 2013 2014 2015 2016 Cisco Visual Networking Index: Global Mobile Data Traffic Forecast Update, 2011 2016

Smartphone-Nutzung Wofür werden Smartphones benutzt? Quelle: O2 News Centre - Making calls has become fifth most frequent use for a Smartphone for newly-networked generation of users, 2012

Smartphone-Nutzung Wofür werden Smartphones benutzt? Fotografieren Bücher lesen Filme / TV SMS E-Mails Telefonieren Spielen Musik hören Soziale Netze Surfen 3,42 9,3 9,93 10,2 11,1 12,13 14,44 15,64 17,49 24,81 Quelle: O2 News Centre - Making calls has become fifth most frequent use for a Smartphone for newly-networked generation of users, 2012

Smartphone-Nutzung Wo werden Smartphones benutzt? Quelle: Lookout - Mobile Mindset Study, 2012

Smartphone-Nutzung Wo werden Smartphones benutzt? Quelle: Lookout - Mobile Mindset Study, 2012 App: Holy Bible

Smartphone-Nutzung Wo werden Smartphones benutzt? App: Torque Quelle: Lookout - Mobile Mindset Study, 2012

Smartphone-Nutzung Wo werden Smartphones benutzt? Quelle: Lookout - Mobile Mindset Study, 2012 App: ibeer

Smartphone-Nutzung Wo werden Smartphones App: idragpaper benutzt? App: WC Sucher Quelle: Lookout - Mobile Mindset Study, 2012

Smartphone-Nutzung Wo werden App: Wecker Smartphones benutzt? Quelle: Lookout - Mobile Mindset Study, 2012

Android Geschichte? 2003 Gründung der Firma Android 2005 Google kauft Android 11/2007 Open Handset Alliance 10/2008 Android offiziell verfügbar Erstes Smartphone mit Android erscheint seit 2009 zahlreiche Android Versionen

Smartphone-Markt 215.998 Smartphone-Verkäufe nach 166.716 Betriebssystemen 117.436 166.232 189.924 68.156 142.540 122.864 12.378 46.598 47.452 67.225 26.346 90.560 62.600 179.873 118.848 79.335 310.088 93.844 386.498 108.353 462.908 539.318 111.577 89.930 32.666 21.998 11.330 661 2010 2011 2012 (2013) (2014) 2015 296.647 467.701 630.476 1.104.898 Quelle: http://www.mobiletechworld.com : Windows Phone to be second smartphone OS in 2015

Smartphone-Markt Smartphone-Verkäufe nach 166.716 215.998 Betriebssystemen 117.436 166.232 189.924 68.156 142.540 122.864 12.378 46.598 47.452 67.225 26.346 90.560 62.600 179.873 118.848 79.335 310.088 93.844 386.498 108.353 462.908 539.318 111.577 89.930 32.666 21.998 11.330 661 2010 2011 2012 (2013) (2014) 2015 296.647 467.701 630.476 1.104.898 Symbian Android RIM ios Microsoft Quelle: http://www.mobiletechworld.com : Windows Phone to be second smartphone OS in 2015

Architektur

Architektur

Architektur-Kernel Android -Basis: Linux 2.6 Kernel, angepasst auf Besonderheiten von mobilen Geräten Aufgaben: Hardware-Abstraktion, Treiber Prozess-, Speicher- & Energieverwaltung Netzwerkschnittstelle, Sicherheit

Architektur - Libraries C/C++-Bibliotheken, die Grundfunktionalität zur Verfügung stellen, wie: Web-Engine, 2D/3D-Rendering Datenbanken, Codecs Secure Socket Layer

Architektur - Runtime Dalvik Virtual Machine registerbasierte Java VM mit eigenem Bytecode (dex) hochoptimiert für wenig Speicherplatz Java Core Libraries

Architektur - App FW Basis Framework zum Erstellen von Apps Dienste zum Verwalten von Activities, Ressourcen, Fenstern,... Zugriff aus Statuszeile, Benachrichtigungen Anwendungskommunikation

Architektur - Apps Ebene enthält die eigentlichen Apps Core: Mail, SMS, Calendar, Maps, Browser,...

App Aufbau

App Komponenten Android Apps bestehen aus lose gekoppelten Komponenten Die wichtigsten sind: Activities, Services, Content Provider, Broadcast Receiver, Intents

App Komponenten Activities bilden die Präsentationsschicht der App Controller (analog zu MVC) idr.: Activity <=> App Screen

App Komponenten Services Softwarebestandteile, die im Hintergrund laufen haben kein eigenes UI Verwendung für Downloads, E-Mail Abruf

App Komponenten Intents Nachrichtenkonzept unter Android Lose Kopplung zwischen Komponenten z. B. Starten von Activities & Services, Senden von Benachrichtigungen (Batteriestatus)

App Komponenten Broadcast Receiver Verarbeitung systemweiter Broadcasts Reaktion auf Ereignisse mit unbestimmtem Empfänger

App Komponenten Content provider definierte Schnittstelle zum Zugriff oder zur Bereitstellung von Daten für andere Apps z. B. Auslesen von Kontakten

Projektstruktur src enthält den Standard Java Code Dateien z. B. Activities & Services

Projektstruktur gen Verzeichnis für generierte Dateien R.java: generierte Java Datei mit Referenzen zu Ressourcen (res) BuildConfig.java AIDL Interfaces

Projektstruktur Android x.x Plattform Bibliothek für die Zielplattform Android Dependencies

Projektstruktur assets Verzeichnis für Nicht-Standard -Dateien z. B. Texturen, Schriftarten

Projektstruktur bin Zielverzeichnis für das Kompilat dex, resouces, apk libs eigene App-Bibliotheken

Projektstruktur res drawable: Bilder layout: XML GUIs menu: XML Menüdefinition values: XML Strings, Colors

Projektstruktur Android Manifest Komponenten-Deklaration Berechtigungen API Level API Bibliotheken Hardware-Voraussetzungen

Projektstruktur Android Manifest <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="de.htwds.emrolab.mada.myproject" android:versioncode="1" android:versionname="1.0" > <uses-sdk android:minsdkversion="3" android:targetsdkversion="15" /> <uses-feature android:name="android.hardware.camera" /> <uses-permission android:name="android.permission.camera"/> <application android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/apptheme" > <activity android:name=".mainactivity" android:label="@string/title_activity_main" > <intent-filter> <action android:name="android.intent.action.main" /> <category android:name="android.intent.category.launcher"/> </intent-filter> </activity> </application> </manifest>

Build Prozess Quelle: http://developer.android.com/tools/building/index.html

Praktikum

Toolchain-Installation Java 6 JDK Android SDK http://developer.android.com/sdk/index.html Eclipse >= 3.6.2 http://www.eclipse.org/downloads Eclipse ADT Plugin Eclipse > Help > Install New Software https://dl-ssl.google.com/android/eclipse

Toolchain-Test Android-Projekt in Eclipse anlegen Erstellung eines virtuellen Gerätes Eclipse > Window > AVD Manager Start der Anwendung auf dem Emulator Start der Anwendung auf einem realen Gerät

Hello World Ziel Eingabe des Namens Klick auf Say Hello => Hello Name

Literatur I. Sven Haiges: Android Schnelleinstieg entwickler.press, 2011 II. Thomas Künneth: Android 3 - Apps entwickeln mit dem Android SDK Galileo Press, 2011 III. http://developer.android.com IV. http://www.androidpit.de/de/android/wiki