GeoApp-Entwicklung (Geoinformatik III)

Sommersemester 2020 - Autor: Franz Xaver Schütz



2. Lehrbrief vom 8.4.2020


Sehr geehrte, liebe Damen und Herren,

herzlichen Dank für Ihre vielen Abgaben! Die habe ich erst einmal ausgewertet - was schon eine Zeitlang gedauert hat - und werde den weiteren Verlauf unserer Veranstaltung entsprechend anpassen bzw. mache das in diesem Lehrbrief bereits, damit alle, die mitmachen wollen, das auch können.

Einige Ihrer Antworten waren richtig gut, auf der anderen Seite sind Ihr Vorwissen und die technische Ausrüstung doch weit gestreut. Darum bin ich froh, dass ich die Abfrage durchgeführt habe. Bezüglich Rechner und Betriebssystemen haben Sie verschiedene macOS und Windows 7-10, Ubuntu Linux war auch dabei, bei den mobilen Geräten von iOS 13.x bis Android 4.x-10. Sie hatten zudem nach den Programmen gefragt, die ich/wir verwenden will/wollen.

Da habe ich jetzt lange überlegt und einige Tage (+ Nächte - also nicht verzweifeln, wenn die Installation nicht sofort klappt - "Durchhalten" lohnt sich) verschiedene Softwareentwicklungsumgebungen (IDEs) auf Windows und macOS installiert und getestet, damit wir eine gemeinsame Basis haben. Frau Hoffmann hatte im Raum 311 alle Rechner ja so schön mit Android Studio und Xcode für macOS und Windows "aufgesetzt" - den können und sollten wir ja jetzt nicht nutzen.

Um eine gemeinsame Basis zu haben, fangen wir mit Android Studio an. Das ist kostenlos für alle Betriebssysteme verfügbar, die Sie angegeben haben und ich habe das auch für macOS und Win 7-10 (teils mühsam) ausprobiert, vgl. oben - letztendlich hat es überall funktioniert. Die Installation ist damit auch Ihre erste Aufgabe. Fertigen Sie dazu bitte ein kurzes Erfahrungsprotokoll an, gerne mit screenshots und laden es auf moodle hoch. Das will ich mit zu Ihrer Projektarbeit zählen. Wenn Sie das geschafft haben, kann in meinem Teil fast nix mehr "passieren".

Auch die Neuerstellung/Umstellung von/auf Onlineinhalte/n und das Testen nehmen entsprechende Zeit in Anspruch. Deshalb hat es etwas gedauert, bis jetzt mein zweiter Lehrbrief vorliegt.

Die heutigen und zukünftigen Fragen und Übungen im Frage- und Übungsteil können Ihnen am Ende unserer Veranstaltung zugleich als Fragen- und Übungskatalog zur Klausurvorbereitung dienen!

Unsere erste Probesprech- Frage- und Diskussionsstunde findet für die, die wollen, am Fr. 10.4.2020 um 12 Uhr statt. Die entsprechende Webadresse will ich Ihnen noch schicken. Sie sollten diese Seite dann mit Ihrem Rechner bzw. mobilen Gerät aufrufen können. Wir testen es einfach und schauen, ob's funktioniert.

Das war's für heute. Bleiben Sie gesund, alles Gute und

mit vielen freundlichen Grüßen,

franz xaver schütz



============================= Theorieteil ================================


Der Theorieteil besteht heute "lediglich" aus einer Installationsanleitung für die neueste Version von Android Studio. Einige von Ihnen hatten den Wunsch nach einer Anleitung formuliert und gefragt, welche Programme wir verwenden. Da es eine derartige Anleitung für die neue Version so noch nicht gibt, habe ich Sie neu erstellt, als ich die Installation für uns auf verschiedenen Rechnern getestet habe. Diese Version will ich für die zukünftigen Anleitungen, Skripte und Lehrbriefe verwenden. Wie oben gesagt, war es teilweise SEHR mühsam, bis alles "gelaufen" ist - ich hoffe, Sie haben da mehr Glück als ich, aber "Durchhalten" lohnt sich. Ich werde das ja an den uploads Ihrer Beschreibungen zur Installation sehen. Bei Fehlermeldungen sollten Sie sich auch gegenseitig unterstützen, z.B. über das moodle Forum in meinem Teil - da zähle ich auf Ihren Teamgeist!



Android Studio - kurze Installationsanleitung

Auf der Seite "Android Studio downloads" (Stand: 7.4.2020) stehen kostenlose Versionen von Android Studio für alle Betriebssystem, die Sie angegeben hatten, zur Verfügung, vgl. Abb. 1.


Abb.1: "Android Studio downloads".


Abb. 2: Android Studio Setup.



Abb. 3: Choose Components.


Bei den Komponenten sollten Sie auch AVD (Andoid Virtual Device) auswählen (vgl. Abb. 3). Damit lassen sich alle denkbaren Geräte (Smartphones, Tablets, ) auf jedem Betriebssystem (macOS, Windows, Linux, Chrome) simulieren und Ihre entwickelten Apps können darauf installiert und getestet werden - was wir dann auch machen werden.


Abb. 4: Next > Installation von Java Komponenten.


Da Android Studio auf der Java IDE IntelliJ basiert (und in Java haben ja fast alle von Ihnen [Grund]Kenntnisse), werden viele Java-Komponenten installiert, vgl. Abb. 5.


Abb. 5: "Setup was completed successfully".


Abb. 6: Import settings.


Falls Sie eine ältere Version von Android Studio auf Ihrem Rechner bereits installiert hatten, könnten Sie hier die entsprechenden Einstellungen importieren. Bei kompletter Neuinstallation bitte nichts importieren.


Abb. 7: Unable to access Android SDK


Falls die Fehlermeldung in Abb. 7 erscheint, besteht in der Regel keine Verbindung zum Internet (offline). Im weiteren Verlauf der Installation wird noch eine große Datenmenge auf Ihren Rechner kopiert werden. Drücken Sie auf "Setup Proxy", stellen Sie eine Internetverbindung her und drücken Sie auf OK, vgl. Abb. 8.


Abb. 8: HTTP Proxy.


Abb. 9: Welcome.


Falls der "Welcome" Bildschirm erscheint, haben Sie die Grundinstallation erfolgreich erledigt! Schon mal herzlichen Glückwunsch! Leider folgt noch der Teil der Installation, der dann bei mir auf diversen Betriebssystemen nicht immer sofort geklappt hat...


Abb. 10: Install Type.


Falls Sie nicht bereits Erfahrungen mit Android Studio haben, wählen Sie bitte am besten "Standard" beim Installationstyp, vgl. Abb. 10.


Abb. 11: UI - Dracula oder Light.


Beim UI (user interface) haben Sie in der Regel die Wahl zwischen "Dracula" (schwarzer Hintergrund) oder "Light" - was Ihnen besser gefällt.


Abb. 12: Downloading Components.


Bei den Komponenten werden die entsprechenden Versionen von Android heruntergeladen. Version 29 entspricht z.B. Android 10.0 = "API Level 29". Diese Versionen können wir uns später im SDK Manager anschauen und beliebig, auch für ältere Betriebssysteme nachinstallieren. Ich habe z.B. noch Android 4.4, 7 und 8 auf den Rechnern.


Nach dem Download werden die Komponenten entpackt und installiert, vgl. Abb. 13.

Abb. 13: Download and Install SDK Platform 29.


Jetzt wird Intel HAXM installiert, das war bei mir auf einigen Rechner das größte Problem. Hierbei handelt es sich um "Intel(R) Hardware Accelerated Execution Manager (HAXM) with Intel(R) Virtualization Technology (VT) for faster Android* Emulation", also um eine Hardwarebeschleunigung.


Die Installationsdateien finden sich dann unter:


C:\Users\root\AppData\Local\Android\Sdk\extras\intel\Hardware_Accelerated_Execution_Manager


Falls Sie bei der Installation von HAXM Probleme haben, melden Sie sich bitte, ich habe einige Lösungen gefunden, z.B: Ersatz der aktuellen XAXM Version durch eine ältere, dann hatte es bei mir auf einem Rechner funktioniert.


Abb. 14: Alles, incl. HAXM erfolgreich installiert!


Wenn Sie es bis Abb. 14 geschafft haben, herzliche Gratulation, dann "läuft" Android Studio und es kann mit der GeoApp-Entwicklung losgehen. Falls Sie jetzt noch ein Android Gerät haben und das z.B: per USB mit dem Rechner verbinden, könnten Sie Ihre Apps bereits direkt auf das Gerät kopieren und dort ausführen. Wir legen uns jedoch alle ein AVD an, also ein virtuelles Gerät, vgl. unten.


Abb. 15: Unserer erstes Android Studio Projekt.


Jetzt sind wir in der Lage, eine erste, einfach TestApp zu programmieren. Dazu legen wir ein neues Android Studio Projekt an, vgl. Abb. 15.


Abb. 16: Projektvorlagen.


Wir fangen "ganz einfach" mit einer leeren "Activity" an, vgl. Abb. 16. Was das ist und wie so eine App überhaupt aufgebaut ist, folgt im nächsten Lehrbrief. Sie sehen schon, dass es zahlreiche Vorlagen gibt, z.B. auch eine "Google Maps Activity". Die Layouts dieser Vorlagen kommen Ihnen vielleicht bekannt vor, auch dazu in Zukunft mehr.


Abb. 17: Projektname.


Zunächst benötigen wir einen Namen für unser Projekt. Ich habe es "MeineErsteAndroidApp" genannt. Es wird nach dem "Minimum SDK" gefragt, hier API 16: Android 4.1 und angezeigt, dass die App dann z.B: auf 99,8% aller Geräte laufen würde. Würden wir hier API 29: Android 10.0 angeben, würde die App lediglich auf 8,2% der Geräte laufen, weil es eben noch nicht so viele Geräte mit Android 10.0 gibt. Hier sollten Sie sich also später auch überlegen, über welche Geräte die zukünftigen Nutzerinnen und Nutzer Ihrer App verfügen. Das gehört mit zur Anforderungsanalyse, dazu in zukünftigen Lehreinheiten.



Abb. 18: Automatisierte Codegenerierung.


Android Studio generiert dann automatisiert Code (vgl. Abb. 18), wie Sie das z.B. aus NetBeans oder Visual Studio kennen. Sie könnten nun unter Build -> Make Project einen ersten "build" Versuch starten und es werden (nochmals) entsprechende, notwendige Dateien heruntergeladen, vgl. Abb. 19, insb. für gradle - was das ist, dazu später.


Abb. 19: Gradle downloads.


Abb. 20: Build "successful".


Falls alles geklappt hat, erscheint links unten im "Build" Fenster die Meldung "successful".


Abb. 21: Run app.


Hätten wir jetzt, z.B. über USB ein mobiles Gerät angeschlossen, könnten wir unsere erste App auf diesem Gerät mit "Run app" "laufen lassen", vgl. Abb. 21 und 22.


Abb. 22: Ein reales Gerät ist angeschlossen.


Rechts oben in Abb. 22 sehen Sie ein real angeschlossenes Gerät, in diesem Fall über USB, ein "motorola XT1021". In der Regel ist jedoch kein Gerät angeschlossen oder verfügbar. Es erscheint eine Fehlermeldung, vgl. Abb. 23.



Abb. 23: No target device found.


Deshalb generieren wir ein virtuelles Gerät, also einen Simulator (AVD). Das funktioniert mit Tools->AVD Manager, vgl. Abb. 24

Abb. 24: Create Virtual Device.


Bei Klick auf "+ Create Virtual Device" öffnet sich ein Fenster zur Wahl und Definition der Hardware, also des Gerätes, das simuliert/emuliert werden soll, vgl. Abb. 25. Ich habe z.B. ein Smartphone ("Phone") gewählt.


Abb. 25: Select Hardware.


Abb. 26.: System Image.


Nach der Wahl Ihres Gerätes, ist das Betriebssystem des Gerätes zu wählen. dabei handelt es sich um ein Abbild ("Image") eines "realen" Gerätes, das auf Ihre Festplatte kopiert wird. Das kann schon mal über 1 GB groß sein, für ältere Betriebssysteme, z.B. 4.4 ist es kleiner, z.B. 331 MB. Falls große, meist neuere Images nicht funktionieren, was z.B. auf einem Testrechner bei mir mit Windows 7 der Fall war, probieren Sie bitte einmal ein älteres Gerät und Betriebssystem aus. Bei mir hat es dann, nach einigen Anstrengungen, auch funktioniert, vgl. Abbildungen unten.


Abb. 27: download Image


Das gewählte Image wird heruntergeladen und auf dem Rechner installiert. Die Eigenschaften können wir danach jederzeit verändern, dazu später.


Abb. 28: Verschiedene, erzeugte Geräte im AVD Manager.


Starten lässt sich ein AVD mit Klick auf das grüne Symbol unter "Actions", vgl. Abb. 28, gelb umrandet oder jetzt durch Run -> Run app.



Abb. 29: Unsere erste App läuft auf einem AVD + zukünftiges Beispiel.


Auf Abb. 29 sehen Sie die App im AVD und auch eine zukünftige App, zu der Sie den Quellcode von mir erhalten. Im AVD lassen sich z.B. Koordinaten einstellen und testen, auch wenn das Emulationsgerät, also unser Rechner z.B. keinen GPS/GNSS-Empfänger besitzt.


Und jetzt wünsche ich Ihnen viel Erfolg, Geduld und "Durchhaltevermögen" bei der Installation. Bin schon gespannt, was Sie mir berichten.



========================== Fragen- und Übungsteil =====================


Bitte kopieren Sie die Fragen und Aufgaben mit Ihren Antworten/Ergebnissen in ein separates Textdokument und laden es bitte auf moodle hoch. Sie bekommen dann neben einer Bewertung auch entsprechendes feedback bzw. Antworten von mir.



A) Installation Android Studio


Hoffentlich hat Ihre Installation funktioniert, aber auch, wenn es nicht funktioniert hat, fertigen Sie dazu bitte ein kurzes Erfahrungsprotokoll an, gerne mit screenshots. Bei Fehlermeldungen, geben Sie bitte die Fehlermeldung(en) mit screenshots an, Ihren Rechner und Ihr Betriebssystem und wir finden eine Lösung.

B) Einführung - Theorie- vorbereitende Eigenrecherche


Wie und wo definieren Aichele, Schönberger (2016) "native Apps" (Applikationen)?

Antwort:


Wann ist deren Entwicklung sinnvoll?

Antwort:


Welche Vor- und Nachteile haben native Apps?

Antwort:


Welche weiteren Applikationstypen existieren und welche Vor- und Nachteile haben diese?

Antwort:


Welche Vorgehens- und Entwicklungsmodelle existieren in der Softwareentwicklung?

(Das wusste sogar schon jemand von Ihnen bei der Beantwortung der Fragen im ersten Lehrbrief)

Antwort:

Bitte geben Sie bei Ihren Antworten genaue Quellen mit Seite an, das ist in Zukunft z.B. bei Ihrer Bachelorarbeit sehr wichtig!


Ihre Antworten könnten z.B. so aussehen:

Auf Seite xx schreiben Aichele, Schönberger, dass eine "native App" ...

Es existieren folgende Vorgehensmodelle:

1. Uralt-Modell ( Seite xx-xx), gab es von 1970-1980,

2. ..........,

3. Ultimativ neuestes Modell (Seite xxx), seit 2016.



C) Wie finden Sie die Lehrbriefe eins und zwei?


Fragen, Wünsche, Anregungen und falls Sie Fehler finden, bin ich Ihnen für einen Hinweis SEHR dankbar.

Ihre Antworten gehen in den Theorieteil zum dritten Lehrbrief ein (falls sie bis dahin vorliegen) und ich freue mich auf Ihre Abgaben über moodle unter "upload zu Lehrbrief 2"!



Viel Glück und Erfolg beim selbständigen Installieren, Testen und Forschen (Recherchieren)!




 

Datenschutzerklärung | Impressum