Android-Programmierung

Willemers Informatik-Ecke

Das einzig seriöse Javabuch :-) Mehr...

.. enthält ein Kapitel zur Android-Programmierung.
Bei Amazon bestellen
2016-04-11
Auf diesen Seiten halte ich meine Erfahrungen im Bereich der Android-Programmierung fest, um sie später nachschlagen zu können. Die Ausführungen sind kein vollständiger Kurs, manchmal nur Notizen, aber vielleicht anderen hilfreich. Ich arbeite und entwickle unter Linux. Ein Großteil könnte unter Windows ähnlich funktionieren.

Installation von Android Studio

Unter der URL
Android-Developer Website wird das Android Studio zum Download angeboten. Der Download-Link führt auf eine andere Seite, auf der für die verschiedenen Plattformen (Windows, Mac und Linux) je ein Paket für SDK-Tools Only und All Android Studio Packages zum Download zur Verfügung steht. Nach dem Anklicken der gewünschten Entwicklungsplattform müssen die Lizenzbedingungen bestätigt werden. Dann beginnt der Download.

Zunächst muss das Paket entpackt werden. Für Windows und Mac handelt es sich um ZIP-Dateien. Bei Linux eine gepackte TAR-Datei (tgz). Für Windows wird auch eine EXE-Datei angeboten, die ein Installationsprogramm darstellt.

Unter Linux entpackt man das Paket entweder mit dem Ark in der grafischen Oberfläche oder über die Konsole mit dem folgenden Befehl:

# Nur das SDK-Tools-Only-Paket
tar xzf android-sdk_r24.3.3-linux.tgz
# Das Standalone-Studio
unzip android-studio-ide-141.1980579-linux.zip
Für die Entwicklung ist ein Java Development Kit in Version 7 oder höher vorausgesetzt, ein Java Runtime Environment reicht nicht.

Ich habe das Standalone-Paket für das Android-Studio in das Verzeichnis /opt gelegt und dort entpackt. Der Befehl /opt/android-studio/bin/studio.sh startet nun das Android-Studio. Das müsste dann noch in das Menü "Entwicklung" des jeweiligen Desktops eingebunden werden. Oder man erstellt ein Icon auf dem Desktop.

Alternativ kann man das Android-Studio auch im eigenen Heimatverzeichnis entpacken. Auch hier startet man mit android-studio/bin/studio.sh das Programm. Einen entsprechenden Eintrag kann man im Applikationsmenü der grafischen Oberfläche nachtragen.

Der erste Start

Beim ersten Start fragt Android-Studio, ob es eine vorige Version gibt, von der die bisherigen Projekte übernommen werden sollen.

Gleich zu Anfang wird ein Assistent gestartet, der das erste Projekt einrichtet. Er fragt, ob eine Standardumgebung gewünscht wird, Wird hier Custom eingegeen, kann man die Farbgebung bestimmen und vor allem kann man angeben, welches Android-SDK verwendet werden soll, falls man es schon heruntergeladen und installiert hat.

Leider schlägt dies auf einem 64-Bit-Linux fehl, weil es Google immer noch nicht geschafft hat, eine 64-Bit-Version zu bauen. Stand Juni 2015 (siehe unten):

Es wird vorgeschlagen, dass KVM zur schnelleren Ausführung der Emulation installiert wird. Zum Schluss wird um eine Lizenzzustimmung gebeten und es wird das Android-SDK über das Internet geladen.

64-Bit-Version für Linux

Leider gibt es ein feines Durcheinander bezüglich 32- und 64-Bit-Umgebung. Das Android-Studio dreht Zicken, wenn es auf einem 64-Bit-System installiert ist. Das ist eigentlich beschämend, wenn man bedenkt, wie eifrig sich Google für die Entwicklung von Android bei Open-Source bedient hat und dann die Linux-Entwickler mit einer 32-Bit-Version im Regen stehen lässt.

Installiert man dann auf einer 32-Bit-Umgebung, so funktioniert zwar das Android-Studio, erzählt aber beim Debuggen, dass 32-Bit-Emulatoren so etwas von deprecated sind. Man darf nur mit der Option -force-32bit überhaupt starten.

Um unter einem 64-Bit-Linux eine 32-Bit-Anwendung starten zu können, müssen einige Pakete wie lib32ncurses5 und lib32stdc++6 hinzugebunden werden, weil sonst beim Start der Fehler "adb: error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file or directory" erscheint.

Unter einem System mit Debian-Paketen wie Ubuntu oder Linux Mint kann man diese mit den folgenden Befehlen nachinstallieren:

sudo apt-get install lib32ncurses5 lib32stdc++6
sudo apt-get install lib32z1 lib32bz2-1.0

Ein neues Projekt anlegen

Nach dem Start will das Android-Studio sofort ein neues Projekt anlegen und führt mit wenigen Fragen durch die Einrichtung. Hier muss der Name der Applikation, des Projekts und des Pakets angegeben werden. Geben Sie einen Applikationsnamen an. Aus diesem werden sich alle anderen ergeben.

Beim Package Name wird gern die eigene Domain rückwärts vor den Projektnamen gestellt, also beispielsweise de.willemer.projekt.

Minimum Required SDK bestimmt, welche Android ein Gerät mindestens haben muss, um die App benutzen zu können. Das Target SDK sollte möglichst aktuell sein.

Mit Weiter oder Next kommen Sie zum jeweils nächsten Dialog. Sie können die Default-Einstellungen für das erste Projekt belassen. Einfach weiterklicken, bis Finish erscheint.

Mit File|New Project kann später ein eigenes Projekt angelegt werden.

Grafisches Layout

Die sehen ein Programm mit "Hello world!" vor sich. Sie können auf diesem Schirm Elemente anklicken, löschen und neue hinzufügen. Alles mit der Maus.

Debug per Emulation

Die Entwicklungsumgebung liefert einen Android-Emulator mit, den Sie aus Eclipse heraus über das Menü "Tools | Android | AVD-Manager" starten können.

Sie können über den Button Create Virtual Device... ein neues Device angelegt.

AVD Name: frei wählbar Device: Gibt die Display Größe vor. Target: Ist die Betriebssystemversion

Nachdem ein Device erzeugt wurde, kann es im Manager angewählt und dann über den Start-Button gestartet werden. Das dauert etwas, weil das komplette virtuelle Smartphone gebootet werden muss.

Wenn die Emulation läuft, kann sie einfach in einem separaten Fenster stehenbleiben.

Das Projekt kann mit dem grünen Dreieck in der Mitte der Symbolleiste des Android-Studios gestartet werden.

Es erscheint der Android Device Chooser. In der obersten Liste werden die angeschlossenen laufenden Devices aufgezählt. Wenn keines vorhanden ist, können Sie "Launch a new Android Virtual Device" anwählen. Sollte noch keines vorhanden sein, klicken Sie auf "Manager" und erreichen so den oben beschriebenen Android Virtual Device Mananger. Sobald die App gestartet wird (Run | Run) wird sie im Emulationsbildschirm sichtbar und kann dort bedient werden. Die Maus dient als Finger. Als Tastatur muss allerdings diejenige rechts neben der Emulation verwendet werden.

Debug per Smartphone

Sie können bei der Entwicklung ein Android-Smartphone zum Test und für das Debugging verwenden. Dazu müssen zwei Dinge erlaubt werden:

Bei den neueren Android-Versionen (ab Version 4.2) ist das etwas trickreich. Zunächst muss über die Einstellungen in den Geräte-Infos die Build-Nummer gesucht werden und siebenmal angetippt werden. Danach werden die Entwickleroptionen freigeschaltet. In diesen gibt es den Punkt USB-Debugging, der eingeschaltet werden muss.


Homepage (C) Copyright 2014, 2015, 2016 Arnold Willemer