Ubuntu 12.10 „Quantal Quetzal“
Ubuntu 10.04 „Lucid Lynx“
Fremdsoftware kann das System gefährden.
Anmerkung: Das Android SDK ist nicht in den offiziellen Paketquellen verfügbar.
Android
ist ein von Google bereitgestelltes freies Betriebssystem für Mobilgeräte wie bspw. Smartphones und Netbooks. Entwickelt wird es von der Open Handset Alliance
. Es basiert auf dem Linux-Kernel 2.6 und wird vornehmlich in Java programmiert. Eine (teilweise) Programmierung in C ist ebenfalls möglich, jedoch kann man keine Stand-Alone-Programme damit schreiben, sondern nur einzelne Unterprogramme, die dann von einem Java-Programm gestartet werden (siehe Android NDK).
Mittels des Android SDKs kann man - bei entsprechenden Programmierkenntnissen - schnell eigene Apps für Android entwickeln und auf dem eigenen Rechner testen. Google beansprucht keinerlei Rechte an der Software, die man mit dem SDK entwickelt hat. Insbesondere steht es einem frei, die eigenen Programme unter die GPL, eine andere OpenSource Lizenz oder eine proprietäre Lizenz zu stellen.
Die Android-Entwicklungswerkzeuge werden zusammen mit einer fertig konfigurierten Eclipse-Umgebung zum Download angeboten. In diesem Abschnitt wird beschrieben, wie sich mit Hilfe dieses Paketes eine Entwicklungsumgebung auf Benutzerebene installieren lässt. Auf diese Art und Weise kommt man mit geringen Systemveränderungen durch Fremdsoftware aus und erhält relativ schnell eine funktionierende Umgebung. Alternativ wird im folgenden Abschnitt die Installation mit Einzelkomponenten beschrieben.
Als Voraussetzung muss eine Entwicklerversion von Java 6 installiert sein. Offiziell unterstützt wird nur Oracle Java. Prinzipiell kann jedoch auch das in der Paketverwaltung vorhandene OpenJDK verwendet werden. Bei Bedarf kann man ein zusätzliches Java-SDK später nachinstallieren.
Paketliste zum Kopieren:
sudo apt-get install openjdk-6-jdk
sudo aptitude install openjdk-6-jdk
Falls es sich um ein 64-Bit-System handelt muss außerdem noch die C++-Standardbibliothek in der 32-Bit-Variante installiert sein. (Unter älteren Systemen wurde hierzu das Paket "ia32-libs" installiert. Das funktioniert spätestens ab Ubuntu 12.10 nicht mehr.)
Paketliste zum Kopieren:
sudo apt-get install libstdc++6:i386
sudo aptitude install libstdc++6:i386
Nun benötigt man das Paket mit der Android Entwicklungsumgebung. Das wird als "ADT Bundle" auf der Herstellerseite
angeboten. Man wählt dort entsprechend seinem System die 32-bit oder 64-bit-Version für Linux aus, lädt die ZIP-Datei herunter und entpackt[1] sie. Den entstehenden Ordner verschiebt man dann in sein Home-Verzeichnis, so erhält man z.B. das Verzeichnis
~/adt-bundle-linux-x86_64/
.
Nun sollte man die Entwicklungstools noch zur PATH-Umgebungsvariable hinzufügen[2], in diesem Beispiel geschieht das durch Ergänzen von zwei Zeilen zur Datei ~/.bashrc
:
1 2 | export PATH=${PATH}:~/adt-bundle-linux-x86_64/sdk/platform-tools export PATH=${PATH}:~/adt-bundle-linux-x86_64/sdk/tools |
Nun kann man mit dem Aufruf von ~/adt-bundle-linux-x86_64/eclipse/eclipse
die Entwicklungsumgebung starten.
Vor der Installation des Android SDKs muss die Entwicklerversion (Java 6 JDK) von Oracle installiert sein. Das freie OpenJDK wird vom Android-Projekt offiziell nicht unterstützt.
Da für die Entwicklung mit dem Android SDK ein Plugin für Eclipse 3.6.2 oder neuer angeboten wird, empfiehlt es sich diese Entwicklungsumgebung zu verwenden. Bei Bedarf kann auch eine andere Anwendung zur Entwicklung verwendet werden, jedoch gestaltet sich die manuelle Konfiguration unter Umständen etwas komplizierter. Aus diesem Grund beschränkt sich diese Anleitung auf die Verwendung von Eclipse.
Die Installation ist im Artikel Eclipse erklärt. Eventuell kann die Eclipseversion aus den Ubuntuquellen zusammen mit dem Android-Plugin zu Problemen führen. Abhilfe kann eine aktuelle Programmversion von der Herstellerseite schaffen. Diese Installationsmethode ist ebenfalls im entsprechenden Artikel aufgeführt. Hinweise zur Installation unter Ubuntu 11.10 bietet ein externer Blogeintrag .
Möchte man das Plugin ADT verwenden, muss man dieses zunächst installieren. Die folgende Anleitung bezieht sich auf Eclipseversionen >= 3.5 (ab Ubuntu 9.10 in den Quellen) Man startet Eclipse und wählt im Menü "Help -> Install New Software". In dem neu geöffneten Dialog auf die Schaltfläche "Add...", trägt in die Zeile "Name" einen beliebigen Namen (bspw.
Android-Plugin
) und unter "Location" die Adresse https://dl-ssl.google.com/android/eclipse/
ein. Anschließend auf "Ok" und aktiviert die Checkbox vor "Developer Tools" (beide angebotenen Android-Plugins werden benötigt). Danach bestätigt man die nächsten zwei Dialoge durch
auf "Next" und man muss die Lizenztexte akzeptieren. Im Anschluss daran wird die Installation durch
auf "Finish" gestartet. Nach der Installation ist ein Neustart von Eclipse erforderlich.
Zuerst lädt man das Android SDK für Linux von der Herstellerseite
herunter und entpackt[1] es in einen beliebigen Ordner (z.B. /opt/android-sdk-linux_x86). Damit man später die im SDK enthaltenen Anwendungen einfach über das Terminal verwenden kann, bietet es sich an das Tools-Verzeichnis (in diesem Beispiel /opt/android-sdk-linux_x86/tools) aus dem Installationsordner zur PATH-Umgebungsvariable hinzuzufügen[2].
Als nächstes muss man Eclipse noch mitteilen, wo sich das Android SDK befindet. Unter "Window -> Preferences" wählt man links "Android" und trägt den Pfad zum Verzeichnis, in welches man das Android SDK entpackt hat, unter "SDK Location" ein (z.B. /opt/android-sdk-linux_x86, ohne das Tools-Verzeichnis). Anschließend auf "Apply".
Zur Einrichtung der Entwicklungsumgebung wählt man im Menü "Window -> Android SDK Manager". In dem geöffneten Dialog kann man die gewünschten Androidversionen nachinstallieren. Hierzu markiert die gewünschte Android Plattform, für die man eine Anwendung entwickeln möchte, markiert das entsprechende Paket und danach auf "Install Selected". Achtung: Die Änderungen werden erst nach einem Neustart von Eclipse vollständig angewendet, obwohl einem dies nicht mitgeteilt wird.
Nachdem man eine oder mehrere Android Plattformen installiert hat, wählt man im Menü "Window -> Android Virtual Device Manager". Hier können virtuelle Android Geräte erstellt werden. Man klickt auf "New", trägt einen beliebigen Gerätenamen ein und wählt unter "Target" die gewünschte Android Plattform, die man vorher installiert hat. Zusätzlich kann der verfügbare Speicherplatz ("SD Card") und das gewünschte Display ("Skin") gewählt werden, zusätzlich können verschiedene (virtuelle) Hardwarekomponenten de-/aktiviert werden. Hat man alle Einstellungen ausgewählt, auf "Create AVD". Anschließend kann man die erstellte Plattform durch
auf "Start" testen (Achtung: Bis die virtuelle Android Plattform betriebsbereit ist, können einige Minuten vergehen!).
Das Android NDK ist hier nur der Vollständigkeit halber erwähnt. Mittels des NDKs können Teile einer Android-Anwendung in C programmiert werden. Verwendung findet es in erster Linie für Anwendungen, die sehr Prozessorabhängig sind. Zusätzlich bietet sich diese Variante an, falls man eine umfangreiche C-Anwendung auf Android portieren möchte. Die Downloadmöglichkeit, Installationanleitung und Verwendung ist auf der Herstellerseite zu finden.
Nachdem man alles Installiert und Konfiguriert hat, kann man nun die erste einfache Anwendung programmieren. Hierzu gibt es auch eine Anleitung auf der Android-Entwicklerseite.
Als Beispiel soll hier HelloWorld dienen. Zuerst muss ein neues Projekt erstellt werden ("File -> New -> Project"). Anschließend wählt man "Android Project" und auf die Schaltfläche "Next". Die folgenden Angaben müssen ausgefüllt werden:
"Project name": Name des Projektes, unter dem es auch gespeichert wird (z.B. HelloWorld
).
"Application name": Der Name, der die Applikation für Benutzer beschreibt (z.B. Hello
).
"Package name": Name des Packages. Dies ist ein eigener privater Java Namespace. Es ist eine Domain - daher muss mindestens ein Punkt "." darin vorkommen (z.B. tld.meinedomaene.android.example.helloworld
).
"Create Activity": Der Name der ersten Aktivität (Class), wenn das Projekt aufgerufen wird (z.B. HelloWorld
).
Als nächstes kann der Quelltext editiert werden. Dieser ist im "Package Explorer" im Ordner src/tld.meinedomaene.android.example.helloworld/HelloWorld.java (der Pfad kann je nach gewählten Projekteinstellungen variieren) zu finden und ergänzt ihn wie folgt:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | package tld.meinedomaene.android.example.helloworld; import android.app.Activity; import android.os.Bundle; import android.widget.TextView; public class HelloWorld extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); TextView tv = new TextView(this); tv.setText("Hello World"); setContentView(tv); } } |
Danach kann die Anwendung im virtuellen Gerät getestet werden. Über das Menü "Run -> Run" wählt man "Android Application" und auf "Ok". Die emulierte Android Plattform startet nun automatisch mit der selbst erstellten Anwendung.