Android Apps programmieren. Das ist nicht nur der Wunsch eines lauen Nachmittags im Frühling, sondern eine vielfach praktizierte Beschäftigung. Wie man hier im Blog anhand der vielen, vielen vorgestellten Apps am Resultat ablesen kann. Die kommen meist von Menschen und werden nicht mit Überschall-Knall von Robotern zusammengeschweißt, wie bei Tesla in der Fabrik. Hehe. Weltweit sind etwa 2,7 Mrd. Smartphones mit dem OS im Einsatz sowie auf allen erdenklichen Geräten vom Kühlschrank bis zur Karaoke-Station, sodass es durchaus auch Nutzer gibt. So, Oma, jetzt weißte Bescheid. Tatsächlich braucht 2018 wohl niemand mehr eine Motivation in Zahlen und Marktanteilen. Richtig sympathisch kam mir entsprechend das Vorwort dieses Android-Lehrbuchs vor, wonach dieser ganze Bedeutungsschwang in drei Zeilen mit dem Satz geschlossen wird: „Aus diesem Grund halten Sie dieses Buch in den Händen.“ Es kommt ohne Firlefanz daher und vermittelt die Grundlagen der App-Programmierung für Android mit Java und XML. Freilich im Android Studio. Also alles ganz konventionell ohne Hybrid, Editor für Jedermann und so weiter. Obwohl… die Einhorn-Kekse, welche da neben dem Buch auf dem Schreibtisch liegen, sind schwieriger zu backen gewesen als eine App, senke ich mal hiermit die Schwelle.
Wir waren gerade bei der Vielheit. Gleich 27,25 Android-Maskottchen schauen vom Frontcover und gucken irgendwie ungeduldig. Einer ist sogar ganz augenscheinlich direkt runtergesprungen. Rückseitig versprochen wird dann auch ein praktischer Einsatz der Technik, man könne direkt loslegen. Also Android Studio auf und rein in die MainActivity. Nee, erstmal die IDE installieren. Die was?
Das Buch „Android-Apps programmieren: Praxiseinstieg mit Android Studio“ (ISBN: 9783958452589) aus der Reihe mitp Professional stammt von Eugen Richter. Das ist nicht der 1883 geborene Herr, welcher wohl bei Google Play zu diesen OT-Verlinkungen zu volkswirtschaftlichen Themen führt. Er hier habe „langjährige Schulungserfahrung u.a. als Dozent an der Münchener Volkshochschule und als Ausbilder im Unternehmen“ und die erfahrungsgeprägte Pädagogik merkt man dem Buch an. Lernt man es so leicht wie hier im Buch für Kids vom gleichen Verlag? Nee. Auf 372 Seiten mit zahlreichen Abbildungen sind sechs Kapitel und ein kurzer Anhang zu finden. Android Apps programmieren lernen, das geschieht anhand einer Beispielapp zur Zeiterfassung, deren Code bei Bitbucket zugänglich gemacht wurde. Aktualität ist stets eine Frage bei solchen Büchern. Die erste Auflage ist 2018 erschienen und wurde für Nutzer vom Android Studio 2.3.3 geschrieben. Ich sage mal „ab“. Hier bei mir installiert ist die 3.1.1 Canary 7 und es macht keinen Unterschied (OT: Wie ich diese Meldung „Plattform und Plugin Updates“ nicht sehen kann, wann immer ich es öffne). Version egal, denn das Buch ist an Anfänger als Zielgruppe gerichtet. Entsprechend hat der Autor z.B. das eigentlich schon seit 2.2 verfügbare Constraints-Layout auch aus „Gründen“ nicht behandelt. Er finde es zu kompliziert für Anfänger. Trotzdem gibt es bei so einem Buch immer Punkte, die schneller veralten als die Tinte trocknet. Dazu später mehr.
Die Grundlagen also. Von der Installation der benötigten Software, also dem Android Studio bis hin zur Projektstruktur. Wer also noch nie ein APK gesehen hat, bevor gepackt wurde, kann sich erstmal damit vertraut machen, wo die Ressourcen mit Layouts liegen und wo der Quellcode. Dann geht es auch schon los mit der Zeiterfassungs-App. Kapitel 2 bis 5 arbeiten sich an allen technischen Punkten ab, die in so einer App verwendet werden können und wohl auch in vielen anderen zum Einsatz kommen. So erklärt sich wohl das Beispiel, was keine so hohe Wiederverwendungsrate hat, dafür ausreichend komplex ist. Um etwa eine SQLite-Datenbank zu nutzen, eine Navigation und Menüs, Dialoge, Bindings und Internet-Zugriff. Alles lose von mir aufgezählt, der eigentliche Inhalt ist freilich gut strukturiert und anschaulich. Es zeigt sich relativ schnell, warum das Buch das Wort „programmieren“ im Titel hat und nicht etwa gestalten oder designen. Zwar werde man auch ohne Java-Kenntnisse zurecht kommen, aber hier kommen wir schon zur Wertung des Inhalts.
Ein wichtiges Thema bei Android sind natürlich die Berechtigungen. Viele (kritische) Nutzer beklagen sich über zu viele Berechtigungen, meist aufgrund des unklaren Zusammenhangs. Deshalb lässt Google ja seit Android 6 ihre Abfrage erst an jener Stelle durchführen, an welcher sie benötigt werden. Für den Nutzer gut, für den Programmierer mit zusätzlichem Aufwand verbunden. Anhand der Berechtigung für den externen Speicherzugriff wird gezeigt, wie man anfragt und prüft. Das alles auf fünf Seiten, sodass man es auch ohne zwingenden Zusammenhang lesen kann und sich das Buch an vielen Stellen auch zum Nachschlagen eignet.
Aktualität. Es gibt nun einige Punkte, welche mit der Zeit veralten. Etwa auf Seite 119 für den SQLite Manager. Einer Erweiterung für Firefox. Ich hatte mir diesen Punkt schon für die Kritik am Buch aufgenommen. Denn sie funktioniert mit der aktuellen Version des Browsers bzw. schon ab der 57 nicht mehr. Damals habe ich auch gestaunt und getrauert, da das Tool recht schnell zu bedienen geht. Hier auf der Homepage des mitp-Verlags ist überraschenderweise ein aktualisiertes Kapitel verfügbar: DB Browser for SQLite statt SQLite Manager. Und genau den hätte ich auch empfohlen. Gut an ihm finde ich, dass man ältere Datenbanken mit ihm auch optimieren kann. Gleich noch ein zweiter Abschnitt im Buch wurde aktualisiert sowie die im Buch vorkommenden weiteren Verweise. Und zwar: Android Device Monitor ist Geschichte, seit Android Studio 3.0.
Umfassend kann so ein Buch freilich nicht sein. Der Autor ist sich dessen bewusst und hat gleich mehrere „Baustellen“ aufgemacht, welche dann zukünftig behandelt werden sollen. Kotlin etwa, oder das bereits genannte neue flexible Layout, ebenso wie Monetarisierung und Apps für die Karaoke-Maschine, also Wear und TV.
Verfügbar ist das Buch „Android Apps programmieren“ hier bei Amazon für 24,99 Euro broschiert bzw. drei Euro günstiger als eBook für Kindle.