Android
Inhaltsverzeichnis Android Toolchain Beispiel Hello World mehr Beispiele Android Market Ausblick Virtualisierung          ...
Was ist Android:    … ein Betriebssystem und Software-Plattform für mobile Devices.    Android baut auf dem Linux-Kernel 2...
Android Infos   http://developer.android.com/,   Die Entwickler Site von Google Android. Hier findet man alle wichtigen In...
Android Versionen                                                           Beispiel,                                     ...
Android VersionenQuelle: Kaliudis A., 2011, Das Wesen der Androiden, connect 6/2011                                       ...
http://developer.android.com, Das „Original“ Beste Dokumentation Installation SDK Implementieren Test Beispiele Verweile h...
Toolchain            Projekt anlegen                     App                programmieren                            App t...
Toolchain1.   JavaSE – JDK ! , http://www.oracle.com/technetwork/java/javase/downloads,     (Mai 2011: Wir setzen zur Entw...
Toolchain – JavaSE JDK http://www.oracle.com/technetwork/java/javase/downloads/index.html,                               F...
Toolchain – Android SDK http://developer.android.com/sdk/index.html, SDK Manager Start, Update, Optionen , https/http, And...
Toolchain - Eclipse http://www.eclipse.org/downloads/,                                Franz Leitner DI, Android Entwicklun...
Eclipse ADT plugin http://developer.android.com/sdk/eclipse-adt.html,                                 Franz Leitner DI, An...
Eclipse + ADT plugin Windows – Preferences – Android – SRC Location                           Franz Leitner DI, Android En...
Google App Inventor (?) Vollständige Entwicklungs-Umgebung für unerfahrene SW Entwickler. Leider nicht weiterentwickelt (S...
Layer ModelApplications                                                Internet                phone         Email        ...
Layer Model http://developer.android.com/guide/basics/what-is-android.html,                             Franz Leitner DI, ...
Wichtige Begriffe Activity    Ist eine Java Klasse, repräsentiert das dynamische Verhalten ihres App.    bearbeitet alle A...
Jetzt geht‘s los Erstes Beispiel – Hello World – einfach http://developer.android.com/resources/tutorials/hello-world.html...
Demo – Hello World Eclipse: Projekt anlegen, Objekte erklären File – New – Project – Android – Android Project Eclipse – p...
Eclipse project workspace          Klasse der Haupt-Activity          Resourcen-ID-Definitionen (automatisch erstellt, nic...
Demo – Hello World DEMO - main.xml   Layout, fill parent, wrap containt, android:id="@+id/buttonAmstetten“ Run As – Androi...
Demo, sample projects eclipse – File-New–Project- And.Sample Project Lunar Lander - http://developer.android.com/resources...
Debugging Am Einfachsten mit Ausgaben am Bildschirm:   Toast.makeText(this, “….”,).show();   Klasse log: Log.v() Log.d() L...
Test Für erste Versuche mit dem Simulator(oder Smartphone) und manuelles Durchspielen. Automatisiertes Testen mit Eclipse ...
App Release Wir möchten unser App freigeben im Market. eclipse – File – Export – Android Erzeuge einen Keystore: Dein priv...
Hochladen in den Market https://play.android.com/publish/Home, Registrieren im Google Android Market (25 $ einmalig) Anmel...
Endlich im Android Market             Franz Leitner DI, Android Entwicklung, 2012, Seite:28
Virtualisieren mit VMwarePlayer              Franz Leitner DI, Android Entwicklung, 2012, Seite:29
Entwickeln in VMWare VMWare Player - http://www.vmware.com/products/player/, Frei verfügbar. Das Beste für „Amateure“. ESX...
Netzwerkeinstellungen in VMWare           NAT        Bridged                           Host-only     Host  10.0.0.140     ...
Entwickeln in VMWare Booten und Einsteigen in das BIOS:    Sehr zeitkritisch, da die Anzeige zu kurz ist.    Editieren der...
Marktanteile OS, 2011Beachte Windows Phone in 2015                                Franz Leitner DI, Android Entwicklung, 2...
OS Markt Anteile                                                     Ausblick von                                         ...
development effort             Franz Leitner DI, Android Entwicklung, 2012, Seite:35
Referenzen www.Gallileocomputing.de – PDF, „Android 3“ veraltet, Sensoren, GPS Seminararbeit Software-Engineering, 28-6-20...
Weitere Android Themen: Lokalisieren – Mehrsprachige Texte Android Services – Applikationen im Hintergrund URI - Universal...
Android Dokumentation Auf dem PC lokal - ..docs Beispiele: ..samples                              Franz Leitner DI, Androi...
Activity states     Link ,     ActivityManager verwaltet     States.onPause() – sichern von Benutzerdaten !Android darf je...
Android Entwicklung
Nächste SlideShare
Wird geladen in …5
×

Android Entwicklung

4.382 Aufrufe

Veröffentlicht am

Wie funktioniert Android App-Entwicklung?
Welche Tools benötige ich?
Schritt-für-Schritt Anleitung für Android App-Entwicklung.
Update 9.2012: Google hat seine Online Dokumentation erweitert. Mein Vortrag ist teilweise veraltet.

Veröffentlicht in: Technologie
1 Kommentar
0 Gefällt mir
Statistik
Notizen
  • Gehören Sie zu den Ersten, denen das gefällt!

Keine Downloads
Aufrufe
Aufrufe insgesamt
4.382
Auf SlideShare
0
Aus Einbettungen
0
Anzahl an Einbettungen
2
Aktionen
Geteilt
0
Downloads
27
Kommentare
1
Gefällt mir
0
Einbettungen 0
Keine Einbettungen

Keine Notizen für die Folie

Android Entwicklung

  1. 1. Android
  2. 2. Inhaltsverzeichnis Android Toolchain Beispiel Hello World mehr Beispiele Android Market Ausblick Virtualisierung Franz Leitner DI, Android Entwicklung, 2012, Seite:2
  3. 3. Was ist Android: … ein Betriebssystem und Software-Plattform für mobile Devices. Android baut auf dem Linux-Kernel 2.6.x auf. („“rooten) Android OS optimiert Speichernutzung, Prozessverwaltung, Akkulaufzeit, Touchscreen 2D, 3D Graphik Dalvik VM: Googles Implementation einer VM, optimiert für Mobile Devices Eine einzige Applikation läuft im Vordergrund. Diese Applikation hat den Fokus und füllt normalerweise den gesamten Bildschirm. Quelloffen – Sourcen und Schnittstellen sind offen gelegt. Jeder darf Erweiterungen (OS + Apps) implementieren. http://source.android.com/, Android Market – Sie dürfen Ihre Apps veröffentlichen. Ein weltweiter Markt steht zur Verfügung.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. 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/, Nützliche Informationen für den Entwickler rund um das Android Projekt. http://android-developers.de/, Forum Source: Jürg Luthiger,University of AppliedSciences Northwestern Switzerland Franz Leitner DI, Android Entwicklung, 2012, Seite:4
  5. 5. Android Versionen Beispiel, Statistik Jänner 2012 Franz Leitner DI, Android Entwicklung, 2012, Seite:5
  6. 6. Android VersionenQuelle: Kaliudis A., 2011, Das Wesen der Androiden, connect 6/2011 Franz Leitner DI, Android Entwicklung, 2012, Seite:6
  7. 7. http://developer.android.com, Das „Original“ Beste Dokumentation Installation SDK Implementieren Test Beispiele Verweile hier – lange, wie bei „Call of Duty“ Franz Leitner DI, Android Entwicklung, 2012, Seite:7
  8. 8. Toolchain Projekt anlegen App programmieren App testen App release im Market0 1h Franz Leitner DI, Android Entwicklung, 2012, Seite:8
  9. 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 für 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 auswählen und installieren. Android Versionen auswählen ! (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
  10. 10. Toolchain – JavaSE JDK http://www.oracle.com/technetwork/java/javase/downloads/index.html, Franz Leitner DI, Android Entwicklung, 2012, Seite:10
  11. 11. Toolchain – Android SDK http://developer.android.com/sdk/index.html, SDK Manager Start, Update, Optionen , https/http, Android Packages auswählen und installieren, Android Versionen aufwärtskompatibel, USB Driver Package – optional, wenn mit echter HW getestet. Simulatoren - AVD einrichten Franz Leitner DI, Android Entwicklung, 2012, Seite:11
  12. 12. Toolchain - Eclipse http://www.eclipse.org/downloads/, Franz Leitner DI, Android Entwicklung, 2012, Seite:12
  13. 13. Eclipse ADT plugin http://developer.android.com/sdk/eclipse-adt.html, Franz Leitner DI, Android Entwicklung, 2012, Seite:13
  14. 14. Eclipse + ADT plugin Windows – Preferences – Android – SRC Location Franz Leitner DI, Android Entwicklung, 2012, Seite:14
  15. 15. Google App Inventor (?) Vollständige Entwicklungs-Umgebung für unerfahrene SW Entwickler. Leider nicht weiterentwickelt (Stand Jan-2012). Franz Leitner DI, Android Entwicklung, 2012, Seite:15
  16. 16. Layer ModelApplications Internet phone Email Libraries / Android RE (runtime environment) OS Linux Kernel 2.6.x.x SD NIC NFC cards touch screen Hardware GPS Franz Leitner DI, Android Entwicklung, 2012, Seite:16
  17. 17. Layer Model http://developer.android.com/guide/basics/what-is-android.html, Franz Leitner DI, Android Entwicklung, 2012, Seite:17
  18. 18. Wichtige Begriffe Activity Ist eine Java Klasse, repräsentiert das dynamische Verhalten ihres App. bearbeitet alle Aktivitäten, User-Interface (onClick…) Hat Lebenszyklen (onCreate, onStart, onResume, onPause, onStop, onDestroy) View Screen layout, User-Interface Intent Verbindung von Aktivities, Folgeseitensteuerung Austausch von Daten/Nachrichten zwischen Anwendungen, Komponenten Services Hintergrundprozesse haben i.Allg. keine View (graphische Ausgabe) Parametrierbar Lebenszyklen: onCreate, onStart, onDestroy Broadcast Receiver – Eventhandling Content Provider - Datenabstrahierung Franz Leitner DI, Android Entwicklung, 2012, Seite:18
  19. 19. Jetzt geht‘s 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 nächste Folie) Franz Leitner DI, Android Entwicklung, 2012, Seite:19
  20. 20. Demo – Hello World Eclipse: Projekt anlegen, Objekte erklären File – New – Project – Android – Android Project Eclipse – properties View einschalten Window – Show view – others – General – properties DEMO - <theFile>.java , main.xml DEMO – AndroidManifest.xml Permissions !! – für 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 können auch mit anderen Tools erstellt werden. Wichtig ist die Pixel-Groöße. Franz Leitner DI, Android Entwicklung, 2012, Seite:20
  21. 21. Eclipse project workspace Klasse der Haupt-Activity Resourcen-ID-Definitionen (automatisch erstellt, nicht editieren!) Ordner für Binär-Dateien (alles, was Android nicht selbst verwaltet) Ordner für Resource-Dateien (Bilder, Layouts, Strings, ...) Logo in hoher Auflösung (72 x 72 Pixel – 240 dpi) Logo in niedriger Auflösung (36 x 36 Pixel – 120 dpi) Logo in mittlerer Auflösung (48 x 48 Pixel – 160 dpi) Layout-Definition für View der Haupt-Activity String-Definitionen "Manifest"-Datei, definiert Infos wie Name, Logo und Haupt-Activity code optimierung, automatisch erstellt, nicht editieren Projekt-Eigenschaften Franz Leitner DI, Android Entwicklung, 2012, Seite:21
  22. 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 können beliebig viele AVDs laufen (Resourcen-Problem). AVDs können 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. 23. Demo, sample projects eclipse – File-New–Project- 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. 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 für Debugging Breakpoints werden unterstützt 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. 25. Test Für erste Versuche mit dem Simulator(oder Smartphone) und manuelles Durchspielen. Automatisiertes Testen mit Eclipse und ADT, günstig, 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. 26. App Release Wir möchten unser App freigeben im Market. eclipse – File – Export – Android Erzeuge einen Keystore: Dein privater Keystore: nur einmal notwendig Pwd bitte merken !! Später: „Use existing keystore“ APK Datei wird erzeugt. Datei ist verschlüsselt. APK Datei hochladen in den Android Market (-> nächste Folie) Franz Leitner DI, Android Entwicklung, 2012, Seite:26
  27. 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 Hochauflösendes 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. 28. Endlich im Android Market Franz Leitner DI, Android Entwicklung, 2012, Seite:28
  29. 29. Virtualisieren mit VMwarePlayer Franz Leitner DI, Android Entwicklung, 2012, Seite:29
  30. 30. Entwickeln in VMWare VMWare Player - http://www.vmware.com/products/player/, Frei verfügbar. Das Beste für „Amateure“. ESX-Server für Profies. VMWare Image erzeugen, Windows oder Linux Windows: erzeuge ein Image mit: File – create New Virt. Machine Linux: fertiges Image verfügbar, z.Bsp Ubuntu: Ubuntu 10.10 Desktop with VMware Tools, Einstellungen der virt. Machine: (in VMWare Player ): Memory RAM ~ 1,5 GB Hard 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. 31. Netzwerkeinstellungen in VMWare NAT Bridged Host-only Host 10.0.0.140 VM VM Host Guest Host Guest 10.0.0.140 Guest VM 10.0.0.140 10.0.0.141192.168.0.100 Franz Leitner DI, Android Entwicklung, 2012, Seite:31
  32. 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 Menüs für 7 Sekunden: [bios.forceSetupOnce = "TRUE“] … optional bios.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 unterstützt. Bottleneck: Harddisk ! Franz Leitner DI, Android Entwicklung, 2012, Seite:32
  33. 33. Marktanteile OS, 2011Beachte Windows Phone in 2015 Franz Leitner DI, Android Entwicklung, 2012, Seite:33
  34. 34. OS Markt Anteile Ausblick von Franz Leitner Windows Phone 7 Franz Leitner DI, Android Entwicklung, 2012, Seite:34
  35. 35. development effort Franz Leitner DI, Android Entwicklung, 2012, Seite:35
  36. 36. Referenzen www.Gallileocomputing.de – PDF, „Android 3“ veraltet, Sensoren, GPS Seminararbeit Software-Engineering, 28-6-2011, Andre Tschersich Android Workshop für Anfänger - Sven Woltmann – 23.2.2010, AndroidPIT Mobile ApplicationDevelopment – Android Einführung, Jürg Luthiger, University of AppliedSciences Northwestern Switzerland Institute forMobile and DistributedSystems Developers Guide, Google - http://developer.android.com/guide/index.html Android, Wikipedia http://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 Anfängerworkshop - http://www.androidpit.de/de/android/wiki/view/Android_Anf%C3%A4nger_Workshop, Franz Leitner DI, Android Entwicklung, 2012, Seite:36
  37. 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: SharedPreferences http://developer.android.com/reference/android/content/SharedPreferences.html, Dateien SQLite Datenbank Netzwerk Franz Leitner DI, Android Entwicklung, 2012, Seite:38
  38. 38. Android Dokumentation Auf dem PC lokal - ..docs Beispiele: ..samples Franz Leitner DI, Android Entwicklung, 2012, Seite:39
  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

×