Seminar Multimediale Werkzeuge Sommersemester 2011 Dipl.-Ing. Marco Niehaus 09.06.2011 Page 1 www.tu-ilmenau.de [email protected] Android Development - Installation • Java SDK wird benötigt (http://www.oracle.com/technetwork/java/javase/downloads/index.html) • Android SDK (http://developer.android.com/sdk/index.html) • Nach der Installation „SDK Manager“ starten und alle Pakete installieren 09.06.2011 Page 2 www.tu-ilmenau.de Android Development - Installation • Android NDK (CAM, GPS, etc.) http://developer.android.com/sdk/ndk/index.html • Eclipse IDE for Java Developers http://www.eclipse.org/downloads/ • Eclipse starten und konfigurieren: a. Workspace festlegen b. Workbench aktivieren 09.06.2011 Page 3 www.tu-ilmenau.de Android Development - Installation c. ADT Plugin installieren Eclipse starten -> “Help” -> “Install new Software…” d. ADT PlugIn benennen und Location angeben 09.06.2011 Page 4 www.tu-ilmenau.de Android Development - Installation e. Android Location angeben (Eclipse Preferences) 09.06.2011 Page 5 www.tu-ilmenau.de Android Development – Erstes Projekt • Android Virtual Device (Emulator) • Über den AVD Manager lassen sich virtuelle Devices anlegen. Hier können auch die Systemversion und zusätzliche Hardware angegeben werden, auf der das Programm laufen soll. Hardware spezifizieren 09.06.2011 Page 6 www.tu-ilmenau.de Android Development • Projekt erstellen • Eclipse Wizzard Projekt 09.06.2011 Page 7 www.tu-ilmenau.de Android Stack Anwendungen Java SDK/API Klassen 09.06.2011 Page 8 www.tu-ilmenau.de Meier, Reto, „Professional Android™ 2 Application Development“, Wiley Publishing, Inc., 2010 Android Architecture • Activities (“Kontrollinstanz”/ ähnlich Windows Forms) – – – – Anwendung besteht aus ein oder mehreren Activities Mindestens eine pro “Bildschirm” Abgeleitet von android.app.Activity Stellt Menü dar und nimmt alle Clicks auf der Oberfläche entgegen 09.06.2011 Page 9 www.tu-ilmenau.de Android Architecture • Widgets/Views (darst. Komponenten/android.view.View) • XML (UI Design – unabh. von Anwendungs-Logik! @Res) • Ressourcen R (“ausgelagert” => Icons, Text, Audio) Alternativ: „DroidDraw“ Ressource R (Gui Designer) http://droiddraw.org/ oder „AndrDev“ http://andrdev.blogspot.com/2010/01/gui-designer.html 09.06.2011 Page 10 www.tu-ilmenau.de Android Architecture 1. 2. 3. 4. 5. Text-Ressourcen für die Beschriftung definieren, Multimedia-Ressourcen definieren, Bildschirmseite definieren, Menüs definieren, Activity implementieren, Bildschirmseiten-Definition und Menüs einbinden, 6. Android-Manifest um neue Activity erweitern, 7. Bildschirmdialog im Emulator testen. 09.06.2011 Page 11 www.tu-ilmenau.de Android Architecture Erstellung der Widgets & Layouts • Default Android Projekt: „LinearLayout“ mit vertikaler Ausrichtung Verbinden mit Activity & DataBinding • findViewById(R.id.spinner1); //Spinner widget from layout • ArrayAdapter.createFromResource(this, <reference item>, <reference layout>); //Databinding items String array zu Spinner • spinner.setAdapter(adapter); CallBack Methoden • Informiert Anwendung über Änderungen (z.B. selektiertes item Spinner) Beispiel „Spinner“ http://developer.android.com/resources/tutorials/views/hello-spinner.html 09.06.2011 Page 12 www.tu-ilmenau.de Android Architecture • Intent – Code für “App to App” Kommunikation – Aufruf verschiedener Activities hilfreiches Tutorial: http://www.youtube.com/watch?v=m-C-QPGR2pM&feature=related • Android Manifest XML − Eine Auflistung aller Bestandteile der Applikation 09.06.2011 Page 13 www.tu-ilmenau.de Aufgabe • Erstellen Sie eine Android Anwendung mit zwei Activities, zwei Layouts und entsprechende Widgets/Views enthält. Mit dem Programm soll der Benutzer in der Lage sein ein Foto zu machen (Android Kamera App), welches anschließend auf der SD-Karte gespeichert und im Layout dargestellt werden. a. Das erste Widget soll als “Info” für den Benutzer dienen (Hinweistext). Über einen Button soll eine zweite Activity aufgerufen werden. b. Mit der zweiten Activity soll die Kamera-App von Android über einen Button aufgerufen werden. Hinweis Text Aufruf zweites Layout Layout 1 09.06.2011 Page 14 www.tu-ilmenau.de Hier ein Beispiel, um von einem Sudoku-Game ein Bild anzufertigen Aufgabe Layout 2 Aufgenommenes Bild soll hier angezeigt werden starten Kamera App 09.06.2011 Page 15 www.tu-ilmenau.de