2. Inhaltsverzeichnis Android Toolchain Beispiel Hello World
mehr Beispiele Android Market Ausblick VirtualisierungFranz Leitner
DI, Android Entwicklung, 2012, Seite:2
3. Was ist Android: ein Betriebssystem und Software-Plattform
fr mobile Devices.Android baut auf dem Linux-Kernel 2.6.x auf.
(rooten)Android OS optimiert Speichernutzung, Prozessverwaltung,
Akkulaufzeit, Touchscreen2D, 3D GraphikDalvik VM: Googles
Implementation einer VM, optimiert fr Mobile DevicesEine einzige
Applikation luft im Vordergrund. Diese Applikation hat den Fokus
und flltnormalerweise den gesamten Bildschirm.Quelloffen Sourcen
und Schnittstellen sind offen gelegt. Jeder darf Erweiterungen (OS
+Apps) implementieren.http://source.android.com/,Android Market Sie
drfen Ihre Apps verffentlichen. Ein weltweiter Markt steht
zurVerfgung.2005: Google erwirbt Startup Android Inc. von Andy
Rubin.2008: erstes Android Smartphone, HTC Dream (Google G1) Franz
Leitner DI, Android Entwicklung, 2012, Seite:3
4. Android Infos http://developer.android.com/, Die Entwickler
Site von Google Android. Hier findet man alle wichtigen Infos zur
Applikationsentwicklung auf Android. http://source.android.com/,
Das Android Open SourceProjekt von Google. Hier findet man den
Quellcode zur Android Plattform. http://androidguys.com/, Ntzliche
Informationen fr den Entwickler rund um das Android Projekt.
http://android-developers.de/, Forum Source: Jrg
Luthiger,University of AppliedSciences Northwestern
SwitzerlandFranz Leitner DI, Android Entwicklung, 2012,
Seite:4
5. Android Versionen Beispiel, Statistik Jnner 2012 Franz
Leitner DI, Android Entwicklung, 2012, Seite:5
6. Android VersionenQuelle: Kaliudis A., 2011, Das Wesen der
Androiden, connect 6/2011 Franz Leitner DI, Android Entwicklung,
2012, Seite:6
7. http://developer.android.com, Das Original Beste
Dokumentation Installation SDK Implementieren Test Beispiele
Verweile hier lange, wie bei Call of DutyFranz Leitner DI, Android
Entwicklung, 2012, Seite:7
9. Toolchain1. JavaSE JDK ! ,
http://www.oracle.com/technetwork/java/javase/downloads, (Mai 2011:
Wir setzen zur Entwicklung Windows7 64 Bit ein. Die Erfahrung
zeigte uns jedoch, dass ein JDK fr 32-Bit installiert sein muss.
Daher empfehlen wir hier den Download der 32- Bit Version)2.
Android SDK , http://developer.android.com/sdk, (Software
Development Kit) - Packete auswhlen und installieren. Android
Versionen auswhlen ! (etwas Geduld warten warten ~1 h )3. Eclipse ,
http://www.eclipse.org/downloads/ + ADT plugin ,
http://developer.android.com/sdk/eclipse-adt.html, im Anschluss
gleich Update aufrufen Eclipse Help Check for Updates Update immer
aufrufen, wenn auch in Android SDK ein Update/Installation
war.Franz Leitner DI, Android Entwicklung, 2012, Seite:9
14. Eclipse + ADT plugin Windows Preferences Android SRC
Location Franz Leitner DI, Android Entwicklung, 2012, Seite:14
15. Google App Inventor (?) Vollstndige Entwicklungs-Umgebung
fr unerfahrene SW Entwickler. Leider nicht weiterentwickelt (Stand
Jan-2012).Franz Leitner DI, Android Entwicklung, 2012,
Seite:15
16. Layer ModelApplicationsInternetphone Email Libraries /
Android RE (runtime environment) OS Linux Kernel 2.6.x.xSDNIC NFC
cards touch screen HardwareGPSFranz Leitner DI, Android
Entwicklung, 2012, Seite:16
17. Layer Model
http://developer.android.com/guide/basics/what-is-android.html,
Franz Leitner DI, Android Entwicklung, 2012, Seite:17
18. Wichtige Begriffe ActivityIst eine Java Klasse,
reprsentiert das dynamische Verhalten ihres App.bearbeitet alle
Aktivitten, User-Interface (onClick)Hat Lebenszyklen (onCreate,
onStart, onResume, onPause, onStop, onDestroy) ViewScreen layout,
User-Interface IntentVerbindung von Aktivities,
FolgeseitensteuerungAustausch von Daten/Nachrichten zwischen
Anwendungen, Komponenten ServicesHintergrundprozessehaben i.Allg.
keine View (graphische Ausgabe)ParametrierbarLebenszyklen:
onCreate, onStart, onDestroy Broadcast Receiver Eventhandling
Content Provider - DatenabstrahierungFranz Leitner DI, Android
Entwicklung, 2012, Seite:18
19. Jetzt gehts los Erstes Beispiel Hello World einfach
http://developer.android.com/resources/tutorials/hello-world.html,
viel zu einfach, daher gleich weiter: Hello World viel besser
http://www.androidpit.de/de/android/wiki/view/Android_Anf%C3%A4nger_Workshop,
- siehe auch PDF (Beilage zu diesem Vortrag) - wurde bereits von HP
entfernt Vorsicht: diese Anleitung ist etwas veraltet. DEMO (siehe
auch nchste Folie) Franz Leitner DI, Android Entwicklung, 2012,
Seite:19
20. Demo Hello World Eclipse: Projekt anlegen, Objekte erklren
File New Project Android Android Project Eclipse properties View
einschalten Window Show view others General properties DEMO - .java
, main.xml DEMO AndroidManifest.xml Permissions !! fr Internet, SD
card, DEMO: Google Suche: android permission Application Icon DEMO:
Eclipse - Version code, Version name Layout
http://developer.android.com/guide/topics/ui/declaring-
layout.html, Eclipse File New Others Android new IconSet Icons
knnen auch mit anderen Tools erstellt werden. Wichtig ist die
Pixel-Groe. Franz Leitner DI, Android Entwicklung, 2012,
Seite:20
21. Eclipse project workspaceKlasse der
Haupt-ActivityResourcen-ID-Definitionen (automatisch erstellt,
nicht editieren!)Ordner fr Binr-Dateien (alles, was Android nicht
selbst verwaltet)Ordner fr Resource-Dateien (Bilder, Layouts,
Strings, ...)Logo in hoher Auflsung (72 x 72 Pixel 240 dpi)Logo in
niedriger Auflsung (36 x 36 Pixel 120 dpi)Logo in mittlerer
Auflsung (48 x 48 Pixel 160 dpi)Layout-Definition fr View der
Haupt-ActivityString-Definitionen"Manifest"-Datei, definiert Infos
wie Name, Logo und Haupt-Activitycode optimierung, automatisch
erstellt, nicht editierenProjekt-EigenschaftenFranz Leitner DI,
Android Entwicklung, 2012, Seite:21
22. Demo Hello World DEMO - main.xml Layout, fill parent, wrap
containt, android:id="@+id/buttonAmstetten Run As Android
application Focus setzen auf Projekt, oder java Klasse. NIEMALS xml
files Run configuration Simulator AVD starten: 1. In Eclipse Run
(run configuration zuvor kontrollieren) 2. Direkt: Start Programme
- - Android SDK tools AVD Manager Es knnen beliebig viele AVDs
laufen (Resourcen-Problem). AVDs knnen kommunizieren Internet, GPS,
auch Phonecalls und SMS.
http://developer.android.com/guide/developing/devices/emulator.html,
Gute Beispiele:
http://developer.android.com/resources/faq/commontasks.html, Franz
Leitner DI, Android Entwicklung, 2012, Seite:22
23. Demo, sample projects eclipse File-NewProject- And.Sample
Project Lunar Lander -
http://developer.android.com/resources/samples/LunarLander/index.html,Paint
http://developer.android.com/reference/android/graphics/Paint.html,
FrameLayout SurfaceView USB
http://developer.android.com/resources/samples/USB/index.html,
mUsbManager = (UsbManager)getSystemService(Context.USB_SERVICE);
API 14 (4.0) Media Player
http://developer.android.com/guide/topics/media/mediaplayer.html,
MediaPlayer mediaPlayer = MediaPlayer.create(context,
R.raw.sound_file_1); mediaPlayer.start(); Camera
http://developer.android.com/guide/topics/media/camera.html,/**
Check if this device has a camera */ c = Camera.open(); Franz
Leitner DI, Android Entwicklung, 2012, Seite:23
24. Debugging Am Einfachsten mit Ausgaben am Bildschirm:
Toast.makeText(this, .,).show(); Klasse log: Log.v() Log.d()
Log.i() Log.w() and Log.e() Eclipse Der beste Weg fr Debugging
Breakpoints werden untersttzt Eclipse console beobachten Project
Properties - JavaCompiler adb - Android Debug Bridge
http://developer.android.com/guide/developing/tools/adb.html, (cmd
fenster) telnet localhost 5554 port nummer anpassen !! Franz
Leitner DI, Android Entwicklung, 2012, Seite:24
25. Test Fr erste Versuche mit dem Simulator(oder Smartphone)
und manuelles Durchspielen. Automatisiertes Testen mit Eclipse und
ADT, gnstig, da wir Eclipse bereits zum Implementieren verwenden.
http://developer.android.com/guide/developing/testing/testing_eclipse.html,
Andere Tools, weitere Infos hier
http://developer.android.com/guide/developing/testing/index.html,
Franz Leitner DI, Android Entwicklung, 2012, Seite:25
26. App Release Wir mchten unser App freigeben im Market.
eclipse File Export Android Erzeuge einen Keystore: Dein privater
Keystore: nur einmal notwendig Pwd bitte merken !! Spter: Use
existing keystore APK Datei wird erzeugt. Datei ist verschlsselt.
APK Datei hochladen in den Android Market (-> nchste Folie)
Franz Leitner DI, Android Entwicklung, 2012, Seite:26
27. Hochladen in den Market
https://play.android.com/publish/Home, Registrieren im Google
Android Market (25 $ einmalig) Anmelden APK hochladen: 2
Screenshots notwendig, 320 x 480, 480 x 800, 480 x 854, 1280 x 720,
1280 x 800 Hochauflsendes App-Logo: 512 x 512 , 32-Bit-PNG oder
JPEG Beschreibung (Deutsch, Englisch, ) Versionen App-Type,
Kategorie Kostenpflichtig, Frei ?Franz Leitner DI, Android
Entwicklung, 2012, Seite:27
28. Endlich im Android Market Franz Leitner DI, Android
Entwicklung, 2012, Seite:28
29. Virtualisieren mit VMwarePlayerFranz Leitner DI, Android
Entwicklung, 2012, Seite:29
30. Entwickeln in VMWare VMWare Player -
http://www.vmware.com/products/player/, Frei verfgbar. Das Beste fr
Amateure. ESX-Server fr Profies. VMWare Image erzeugen, Windows
oder LinuxWindows: erzeuge ein Image mit: File create New Virt.
MachineLinux: fertiges Image verfgbar, z.Bsp Ubuntu:Ubuntu 10.10
Desktop with VMware Tools, Einstellungen der virt. Machine: (in
VMWare Player ):Memory RAM ~ 1,5 GBHard Disk ~ 40 GB (20 GB reichen
auch)Netzwerk: NAT (empfohlen) Installieren der kompletten Android
Toolchain in der VM. (JavaSDK, Android SDK, Eclipse+ADT) Virt.
Machine kann einfach weitergegeben werden. Aber zuvor Niederfahren.
Franz Leitner DI, Android Entwicklung, 2012, Seite:30
31. Netzwerkeinstellungen in VMWare NATBridged Host-only
Host10.0.0.140 VMVMHost GuestHost Guest10.0.0.140Guest VM
10.0.0.140 10.0.0.141192.168.0.100Franz Leitner DI, Android
Entwicklung, 2012, Seite:31
32. Entwickeln in VMWare Booten und Einsteigen in das BIOS:Sehr
zeitkritisch, da die Anzeige zu kurz ist.Editieren der .vmx Datei.
Anzeigen des Boot Mens fr 7 Sekunden:[bios.forceSetupOnce = "TRUE]
optionalbios.bootDelay = 7000 eine VM kann einfach weitergegeben
werden. Zuvor die VM komplett niederfahren, dann erst die Files
kopieren. Copy/Paste zwischen Host/Guest funktioniert, wenn die
VMWare-Tools installiert sind. Bei Problemen: einen USB Stick
verwenden. (Removeable devices connect/disconnect) Booten von CD,
USB oder ISO-Image wird untersttzt. Bottleneck: Harddisk ! Franz
Leitner DI, Android Entwicklung, 2012, Seite:32
33. Marktanteile OS, 2011Beachte Windows Phone in 2015Franz
Leitner DI, Android Entwicklung, 2012, Seite:33
34. OS Markt Anteile Ausblick von Franz Leitner Windows Phone 7
Franz Leitner DI, Android Entwicklung, 2012, Seite:34
35. development effort Franz Leitner DI, Android Entwicklung,
2012, Seite:35
36. Referenzen www.Gallileocomputing.de PDF, Android 3
veraltet, Sensoren, GPS Seminararbeit Software-Engineering,
28-6-2011, Andre Tschersich Android Workshop fr Anfnger - Sven
Woltmann 23.2.2010, AndroidPIT Mobile ApplicationDevelopment
Android Einfhrung, Jrg Luthiger, University of AppliedSciences
Northwestern Switzerland Institute forMobile and DistributedSystems
Developers Guide, Google -
http://developer.android.com/guide/index.html Android,
Wikipediahttp://de.wikipedia.org/wiki/Android_(Plattform)
,http://en.wikipedia.org/wiki/Android_(operating_system) , JavaSE,
Wikipedia - http://de.wikipedia.org/wiki/JavaSE, Eclipse Software -
http://www.eclipse.org/, AndroidPIT - http://www.androidpit.de/,
AndroidPIT Anfngerworkshop -
http://www.androidpit.de/de/android/wiki/view/Android_Anf%C3%A4nger_Workshop,
Franz Leitner DI, Android Entwicklung, 2012, Seite:36
37. Weitere Android Themen: Lokalisieren Mehrsprachige Texte
Android Services Applikationen im Hintergrund URI - Universal
Ressource Identifier Intents - Austausch von Nachrichten und Daten
Android Native Development Android Scripting Debugging mit LogCat
oder Android-Log Daten persistent speichern: 4
Arten:SharedPreferenceshttp://developer.android.com/reference/android/content/SharedPreferences.html,DateienSQLite
DatenbankNetzwerkFranz Leitner DI, Android Entwicklung, 2012,
Seite:38
38. Android Dokumentation Auf dem PC lokal - ..docs Beispiele:
..samplesFranz Leitner DI, Android Entwicklung, 2012, Seite:39
39. Activity states Link , ActivityManager verwaltet
States.onPause() sichern von Benutzerdaten !Android darf jederzeit
Prozesse beenden.Nur onPause() wird immer aufgerufen. Franz Leitner
DI, Android Entwicklung, 2012, Seite:40