Im zweiten Teil von „Wie programmiere ich eine Android App?“, kann es richtig los gehen. Unser Ziel ist es diesmal alle möglichen Hürden zu überwinden und die App auf dem Emulator zum Laufen zu bringen.

Inhalt

  • Ein Android Projekt anlegen
  • Android Studio starten
  • Ein App Theme wählen
  • Gradle Build Fehler „aidl is missing“
  • Den Emulator starten
  • Intel HAXM Problem
  • Intel HAXM installieren
  • Plan B
  • Der Emulator lebt, aber langsam

Ein Android Projekt anlegen

Als aller erstes starten wir Android Studio und klicken auf „Start a new Android Studio project“.

1.1

Jetzt benötigt die App noch einen Namen. Ich habe den Namen erstmal bei „My Application“ belassen, Du kannst aber auch gerne jeden beliebigen anderen Namen verwenden.

In der Zeile „Company Domain“, kannst du – falls vorhanden – Deine eigene Domain wählen. Da wir allerdings erstmal nicht vorhaben diese App irgendwo zu veröffentlichen, habe ich es bei max.example.com belassen.

Kurzer Einschub: Google benutzt im PlayStore Deinen Packagenamen für die eindeutige Identifikation, aber das nur am Rande.0.8

Ganz unten kannst Du dann noch auswählen, wo Dein Projekt gespeichert werden soll. Hier ist man mit dem Standard Speicherpfad erstmal gut bedient.

2

Nach dem Klick auf Next sollst Du auswählen, wofür Deine App gedacht sein soll. Hier stehen Dir unter anderem Smartphone/Tablet, TV, Wear und Glass zur Verfügung. Da die App auf Deinem Smartphone bzw. dem emulierten Smartphone laufen soll, wählen wir Phone and Tablet aus.

Nun müssen wir noch einstellen, mit welcher Android-Version unsere App kompatibel sein soll. Hierbei gilt, dass je niedriger Deine gewählte Android-Version ist, desto mehr Geräte können Deine App installieren. Jetzt könnte man natürlich einfach die niedrigste Android-Version wählen und braucht sich um Kompatibilität keine Sorgen zu machen. Das ist jedoch nicht ganz so einfach, denn dann kannst Du viele der Möglichkeiten und Funktionen die Android mit jeder neuen Version hervorbringt nicht benutzen.

Deswegen ist es wichtig einen guten Kompromiss zu finden, zwischen Android-Version und potenzieller Größe der Nutzerschaft.

In unserem Fall würden wir mit der Auswahl: API 15: Android 4.0.3 (IceCreamSandwich) aktuell ungefähr 90,4% aller aktiven Geräte im PlayStore erreichen. Das sollten für unsere Zwecke mehr als genug sein.

Hinweis: Solltest Du planen die App auf Deinem Gerät zu benutzen, solltest Du jetzt prüfen welche Android-Version Dein Gerät unterstützt. Klick dazu auf Einstellungen->Über das Telefon->Android-Version

3

 

Wieder geht es weiter mit dem Klick auf Next: jetzt fügst Du eine Activity deinem Projekt hinzu.

Mittels einer Activity kannst Du mit dem User interagieren. In ihr platzierst Du deine Benutzeroberfläche, die zum Beispiel aus Buttons, Texten oder Bildern bestehen kann.

Weil man so viel mit ihr machen kann, liefert Android Studio auch schon gleich ein paar Vorlagen:

  1. Keine Activity hinzufügen,
  2. Eine leere Activity hinzufügen
  3. Eine leere Activity mit einem Fragment* hinzufügen
  4. Eine Vollbild-Activity hinzufügen, also ohne ActionBar/Navigationsleiste oben
  5. Eine Activity für Google AdMob Werbeanzeigen, falls Du mit Deiner App später mal Geld verdienen möchtest 🙂
  6. Eine Activity bei der Du direkt mit Google Maps loslegen kannst
  7. Eine Activity mit integriertem GooglePlay Service, Google Fit, Google Wallet, Google Drive,…
  8. Eine Activity mit einer Vorlage für einen Login
  9. Eine Activity, die Dir hilft eine Oberfläche zu schaffen, die auf Tablets und Smartphones gut funktioniert
  10. Eine Activity mit implementierten Navigation Drawer, also dem Menü, welches Du durch Wischen von der Seite öffnest
  11. Eine Activity mit einer Vorlage für Einstellungen, die man in Deiner App soll vornehmen können
  12. Eine Activity, die es Dir ermöglicht, durch das Wischen von der Seite zur nächsten Ansicht zu gelangen

*Fragmente sind ähnlich wie Activitys, da sie auch eine Schnittstelle zur Benutzeroberfläche darstellen. Allerdings kannst Du verschiedene Fragmente in eine Activity laden, bzw. mehrere kombinieren. Nicht ganz einfach zu verstehen, bietet aber viele Möglichkeiten.

 

4.1

 

Wir entscheiden uns an dieser Stelle für eine „Blank Activity“. Im nächsten Schritt benötigt die Activity einen Namen. Da es unsere Haupt-Activity wird, passt der Name MainActivity und ich belasse ihn dabei. Du kannst ihr natürlich auch jeden anderen Namen geben. Der Name sollte eindeutig sein und es sollte beim Lesen direkt erkennbar sein was ihre Aufgabe ist. So verliert man später nicht den Überblick.

Da wir eine Vorlage für eine Activity gewählt haben, erstellt Android Studio auch direkt ein Layout. Natürlich benötigt diese Datei auch noch einen Namen. Hier halte ich mich, genauso wie beim folgenden Title und der Menu Ressource Name, an die Android Studio Vorgaben.

Die Menü Informationen beschreiben wie die ActionBar/Navigationsbar aussehen soll, also die Leiste oben in der App, dazu kommen wir aber noch.

Jetzt klicken wir erstmal auf Finish.

5

Android Studio starten

Jetzt sollte sich der Projekt-Assistent schließen und Android Studio Dein Projekt starten. Das Popup mit den Tipps kannst Du Dir durchlesen, wird an dieser Stelle aber nicht weiter benötigt und kann erstmal getrost geschlossen werden.

6

Jetzt lädt Android Studio erst einmal, was je nach System etwas dauern kann. Ganz unten in der Leiste kann man den aktuellen Fortschritt ablesen.7.1

Sobald Android Studio fertig geladen hat, sollte Dein Fenster in etwa wie im Folgenden aussehen. Für viele ist das erstmal sehr unübersichtlich und verwirrend. Es gibt viele Symbole, mit denen man so noch nichts anfangen kann. Aber gehen wir mal der Reihe nach vor: zunächst sollte Dir der Fehler in der Mitte auffallen.

Ein App Theme wählen

Dieser teilt uns mit, dass wir „Rendering Problems“ haben. Der Fehler kommt daher, weil wir noch kein Design Theme für die App ausgewählt haben.ProblemUm ein Theme auszuwählen, klickst Du einfach auf den Button auf dem AppTheme steht. Jetzt sollte sich ein Fenster öffnen, in welchem wir das Theme auswählen können. Theoretisch ist es auch hier egal welches Du wählst. Meine Empfehlung ist das moderne Material Design, wahlweise in dunkel oder hell. Ich habe Material Dark gewählt. Mit einem Klick auf Okay sollte sich das Fenster schließen und das Theme übernommen werden.10Android Studio sollte jetzt in etwa so wie im folgenden Bild aussehen. Das Telefon welches wir sehen soll ein Nexus 4 darstellen und in ihm sehen wir unsere App im wunderschönen Material Dark Design.

Hinweis: Solltest Du später mal schnell sehen wollen wie Dein Layout in verschiedenen Auflösungen aussieht, dann kannst Du einfach auf den Nexus 4 Button klicken. Dort sollten Dir diverse Geräte direkt zur Auswahl stehen. Außerdem kannst Du eigene Gerät definieren.11

Gradle Build Fehler „aidl is missing“

Sollte bei Dir unten auch der Gradle Build Fehler angezeigt werden, dann solltest Du die nächsten Schritte nicht überspringen. Weiterer FehlerLinks in der Projekt Navigation wählst Du „build.gradle(Modul:app)“ und öffnest die Datei. Wichtig ist, dass Du nicht die Datei „build.gradle(Project: MyApplication)“ nimmst.

Jetzt suchst Du nach der Zeile buildToolsVersion XXX, bei mir steht 23.0.0 rc1. Diese Zahl ersetzt Du mit 22.0.1. 

changeJetzt verlangt Android Studio, dass Du das Projekt neu synchronisierst. Dieser Aufforderung gehen wir auch nach und klicken auf Sync Now.syncs

Den Emulator starten

Jetzt sollte es keine Probleme mehr geben und wir können unsere App im Emulator starten. Dazu klickst Du auf den grünen Pfeil, der nach rechts zeigt. Damit sollte die App starten, zu mindest in der Theorie.compileIn der Praxis musst Du jetzt noch auswählen, welches Gerät emuliert werden soll. Es sollte Dir das Nexus-Gerät vorgeschlagen werden. Das bestätigst Du mit einem Klick auf OK.

choose device

Intel HAXM Problem

Jetzt kann es passieren, dass Dir beim ersten Starten des Emulators ein Fehler angezeigt wird.Fehler Emulator

Sollte dies der Fall sein, dann prüfe erstmal ob Deine CPU Intel HAXM unterstützt. Auf der Intel-Webseite ist eine Liste mit Intel CPUs, bei Deiner sollte ein Haken bei Intel® Virtualization Technology (VT-x) stehen, ansonsten kannst Du auch einfach weiter machen. Sollte der Installationsprozess abbrechen, scheint deine CPU VT-x nicht zu unterstützen.

Intel HAXM installieren

Klicke auf den Android AVD Manager. Es sollte sich ein Fenster öffnen.AVDJetzt solltest Du ein Fenster sehen, bei dem Dir Deine Virtual Devices angezeigt werden. Da bei bei Dir sehr wahrscheinlich nur ein Gerät angelegt ist, klickst Du bei dem auf das Bearbeiten Symbol.edit DeviceNun folgt ein Fenster bei dem Du theoretisch diverse Einstellungen an Deinem Virtual Android Device vornehmen kannst. Das interessiert an dieser Stelle weniger, da wir im rechten Fenster auf Download and install HAXM klicken.

Install HAXMDem nun folgenden Installationsanweisungen folgst Du einfach in dem Du auf Next klickst. Sollte jetzt der Fehler erscheinen Unable to install Intel HAXM dann weißt Du, dass Dein PC HAXM so ohne Weiteres nicht unterstützt. 

Plan B

Den Dialog beendest Du mit einem einfachen Klick auf Finish. Plan B verbirgt sich hinter dem folgenden markierten Button. Wir ändern jetzt einfach das System Image.

Hinweis: Das System Image auf armeabi-v7a zu setzen, lässt den Emulator extrem langsam werden. Solltest Du zu diesem Zeitpunkt ein Android-Gerät Dein Eigen nennen, wäre jetzt der perfekte Zeitpunkt es zu nutzen und Dir qualvolle Minuten des Wartens zu ersparen. 🙂

planbIn dem nun erscheinenden Wizard wählst Du in der Spalte ABI eine Version aus, die mit armeebi-v7a startet und bestätigst das Ganze mit OK.wizard

Der Emulator lebt, aber langsam

Wenn Du alles richtig gemacht hast, sollte der Emulator mit einem Klick auf den Run-Button starten. Das dauert jetzt erstmal seine Zeit.

Unbenannt

Hinweis: Man darf sich vom Emulator nicht abschrecken lassen. Mittlerweile gibt es welche die unter AMD und Intel CPUs deutlich schneller laufen. Bei Bedarf werde ich mir verschiedene Ansehen und Empfehlungen für Euch aussprechen.

Sobald der Emulator fertig geladen hat, kannst Du Dein kleines Projekt darauf laden und testen. Dazu wählst Du in Android Studio wie gehabt den Run-Button. Jetzt sollte Dir ein Gerät als Running Device angezeigt werden. Dieses Gerät wählst Du aus und klickst auf Okay. Android Studio sollte jetzt Deine App auf den Emulator installieren und starten.

Unbenannt