Dies ist eine alte Version des Dokuments!


Android, meine erste App

Aller Anfang ist schwer, daher hier eine kurze Beschreibung was zu tun ist um die erste eigene App zu entwickeln. Grundsätzlich ist es dazu nicht nötig Ahnung vom programmieren zu haben, es ist aber natürlich von Vorteil. Da Android-Apps hauptsächlich in Java geschrieben werden macht es Sinn diese Sprache vorher zu lernen. Wenn man ohne Kenntnisse anfängt dauert es einfach nur ein wenig länger.


Was wird benötigt:

Allgemein:

  • Lust und Zeit
  • Ein Rechner auf dem Entwickelt werden soll. Die nötige Software ist für Windows, Linux und Mac jeweils frei verfügbar.

Software:

  • Es wird empfohlen Java JDK zu verwenden, alternativen wie zB. OpenJDK sind aber auch möglich.
  • Für die eigentliche Entwicklung stehen mehrere Varianten zur Verfügung, der empfohlene Weg führt über das AndroidDeveloperTool (ADT). Dies ist im Prinzip Eclipse mit allem was noch so nötig ist zusammengefasst als Bundle. Google möchte in Zukunft die eigene Umgebung Android Studio forcieren. Diese bietet wichtige Neuerungen, befindet sich aber noch in der Beta. Daher wird davon abgeraten sie für produktive Zwecke zu verwenden (Stand Juni/2014). Wer möchte kann und sollte aber direkt damit beginnen. Es ist aber auch Möglich vorhandene IDE zu verwenden und nur das Android-SDK einzubinden, oder auch komplett aus der Kommandozeile zu arbeiten.

Grundsätzlich ist es sehr sinnvoll sich ⇒ HIER ⇐ umzuschauen, dies gilt auch dann wenn man sich schon auskennt. Google bietet eine Menge an Informationen, Dokumentation, Tipps und Tricks welche einem das Entwickeln erleichtern.

Ich selbst werde mich hier auf das ADT beziehen. Der Anfang ist aber auf beiden sehr ähnlich.

Start der Entwicklungsumgebung

Nachdem alles ordnungsgemäß installiert wurde, kann das ADT gestartet werden, an dieser Stelle muss dann noch der „Workspace“ bestimmt werden. Gestartet wird hier eigentlich eine Instanz von Eclipse, die „exe“-Datei findet man unter …/adt-bundle-linux-x86_64/eclipse/eclipse. Unter Windows sollte eine entsprechende Verknüpfung erzeugt worden sein. Leider bedeutet das noch nicht dass es direkt los geht. Üblicherweise müssen noch die neuesten Pakete installiert werden. Dies passiert über den 'Android SDK Manager' welchen man im Toolbar findet.

SDK-Manager Toolbar

Unter Windows alternativ …\adt-bundle-windows\SDK Manager.exe ausführen. Auch in der Menüleiste des Ecplise-ADT findet sich ein Eintrag unter Window→Android SDK Manager.

In Android Studio Tools→Android→SDK Manager. Der Kommandozeilenbefehl lautet android sdk und ist auszuführen in …/adt-bundle-linux-x86_64/sdk/tools/. Nun die gewünschten und benötigten Pakete auswählen und installieren. Dies betrifft insbesondere die Android SDK Tools, Android SDK Plattform-tools und Android SDK Build-tools. Unter Extras finden sich zusätzliche API's und Services welche für diverse Funktionen benötigt werden. Für unsere erste App sind die Extras aber nicht nötig. Wichtig ist die Android API Version. Natürlich wird die neueste Version installiert und jede andere die man möchte. Damit auch ältere Android Versionen unterstützt werden können, sollte hier wenigstens die API 10 installiert werden. Das ganze dauert eine Weile, ist aber nötig.

Achtung: API „L“ ist aktuell noch im „preview“ Status, die Version wird sich wieder ändern. Das „L“ wird als Versionsangabe oft nicht anerkannt. Die aktuellste Version bleibt also 4.4 (KitKat). und zwar O H N E den Anhang „wear“. Dies steht für die sogenannten 'weareables', also die „smarten“ Android-Uhren.

Weitere Vorbereitung

Um unsere App später ausführen zu können, wird entweder ein angeschlossenes Android-Gerät oder ein Android-Emulator benötigt. Beides hat jeweils seine eigenen Vor- und Nachteile.

So kann man mit dem Emulator sehr leicht die verschiedensten Umgebungen simulieren, dies ist sinnvoll um seine App auch mit unterschiedliche Bildschirmgrößen und Auflösungen oder auch verschiedenen Android Versionen zu testen. Leider ist der mit dem SDK1) gelieferte Emulator aber auch sehr langsam und beinhaltet ua. nicht die Google-Play Dienste, welche jedoch für so manche Funktion benötigt werden. Dies ist im übrigen bei den meisten anderen Emulatoren ebenso. Es bleibt einem also unter Umständen gar nichts anderes übrig als auf einem Gerät zu entwickeln.

Dies ist jedoch nicht weiter schlimm, da ja früher oder später jede App auf einem Gerät laufen soll. Der Vorteil liegt hier klar auf der Hand, denn es können direkt alle Dienste verwendet werden und die App kann unter „normalen“ Bedingungen getestet werden. Nachteilig ist jedoch dass der Test nur auf diesem Gerät ausgeführt wird. So könnte es sein dass es auf einem anderen Gerät zu Fehlfunktionen kommt. Außerdem muss unter Windows erst ein Treiber installiert werden damit sich das Gerät im vorher eingestellten Debug-Modus mit dem PC verbinden kann.

Grundsätzlich macht es also durchaus Sinn beides zu verwenden sobald man sich ernsthafter mit der Entwicklung von Apps befassen möchte. Für unseren ersten Anlauf hier ist dies noch nicht nötig.

Es bleibt also euch überlassen ob ihr nun erst den Emulator einrichten oder ein Gerät verwenden wollt, oder doch gleich beides.

Es geht los

Nun sollte alles vorbereitet sein und wir können endlich ein Projekt erstellen. Das passiert wie folgt:

  • File ⇒ New ⇒ Android Application Project
  • Alternativ: File ⇒ New ⇒ Other ⇒ Android ⇒ Android Application Project

Projekt Setup

  • Als App Name „Hello World“ eintragen
  • Projektname wird automatisch erstellt
  • Package Name wird automatisch vorgegeben, sollte jedoch noch angegeben werden. Üblich ist hier die Domain des Authors anzugeben
  • Die minimum unterstütze Android Version auf API 9 setzen
  • Als Target wird die aktuelle API benutzt, hier also API 19 KitKat
  • Auch bei „Compile“ die aktuelle Version angeben (API 19 KitKat)

  • Den Haken bei „Create custom launcher icon“ entfernen. Uns genügt vorerst das standart Icon

  • Hier werden verschiedene Activity-Typen2) angeboten. Wir wählen hier „Empty Activity“ aus. Das ist die einfachste Variante.

  • Die beiden Vorgaben für die Namen der Activity und des Layouts können so bleiben

Projekt erstellt

Nun sollten zwei Dateien im Editor geöffnet sein, die MainActivity.java und activity_main.xml, wobei erstere den Quellcode enthält und letzteres für die GUI3) zuständig ist.

Zusätzlich ist zu beachten dass in „Package Explorer“ links nun nicht nur unser gerade erstelltes Projekt „HelloWorld“ zu sehen ist, sondern auch ein Projekt Namens „appcompat_v7“. Beides wurde soeben automatisch erstellt.

Im Tab „Problems“ unten sollten keine Fehler auftauchen und in der Liste des „Package Explorers“ auf der linken Seite sollte ebenfalls keine rote Markierung zu sehen sein.


Ist dies nicht der Fall, müssen folgende Punkte überprüft werden:

  • Das Projekt „appcompat_v7“ existiert (dies sollte immer der Fall sein)
  • Das Projekt „appcompat_v7“ ist geöffnet. Dies sieht man an dem Pfeil links neben dem Projektnamen. Sollte dort kein Pfeil sein: Rechtklick auf „appcompat_v7“ ⇒ Open Project
  • Rechtsklick auf das Projekt „HelloWorld“ ⇒ Properties ⇒ Android. Dort das Projekt „appcompat_v7“ als „Libray“ einbinden wie hier gezeigt

Erster Start

Wenn Emulator oder Smartphone bereit sind, den Projektordner auswählen und einfach „Run ⇒ Run as ⇒ Android Application“ anklicken.

App Starten

Die App sollte sich dann öffnen. Ab dem zweiten Kompoliervorgang genügt ein klick auf den grünen Pfeil „Run“. Allerdings nur wenn eine *.java Datei oder der Projektordner angewählt sind.

Sollte noch kein Tab „LogCat“ geöffnet worden sein, so schlägt die IDE beim starten vor dies zu tun. Das Fenster welches sich öffnet kann und sollte einfach nur bestätigt werden: LogCat


App im Emulator gestartet



Und nun viel Spass beim Android App erstellen

Bei Fragen, Tipps oder Problemen gerne in unserem Forum melden.

1)
Software Development Kit
2)
Eine Activity steht für eine „Seite“ der App
3)
Graphic User Interface, also die Anzeige