Smarthome App #1: Projekt erstellen | Smarthome Blogger

Smarthome App #1: Projekt erstellen | Smarthome Blogger


Hallo und willkommen bei smarthome-blogger.de. Im heutigen Video wird mit der Programmierung
der Smarthome-App für Android-Systeme mit Android Studio begonnen. Dazu wird als erstes die benötigte Software
installiert. Um Android Studio benutzen zu können,
muss das Java Development Kit auf deinem PC installiert sein. Das JDK kannst du dir unter der eingeblendeten
Adresse herunterladen. Nachdem du es installiert hast,
kann Android Studio heruntergeladen und installiert werden. Android Studio gibt es unter der eingeblendeten
Adresse zum Download. Nach dem Download kannst du Android Studio
installieren und anschließend starten. Als erstes wird ein neues Projekt angelegt. Dazu klickst du auf “Start a new Android Studio
Project”. Im nächsten Schritt kannst du der App einen
Namen geben, den Paketnamen konfigurieren und einstellen, wo das Projekt gespeichert
werden soll. Als App-Namen gibst du “Smarthome” an und
als Company Domain “smarthome-blogger.de”. Dann klickst du auf “Next”. Jetzt wird festgelegt, auf welchen Systemen
die App läuft und welche Android-Version mindestens erforderlich ist. Hier wird für Smartphones die Android-Version
4.0.3 ausgewählt. Setze den Haken bei “Wear” und setze die Version
auf 5.1. Als nächstes wird die erste Activity der
App erstellt. Eine Activity ist ein Fenster, auf dem Daten
dargestellt werden können. Die Activity trägt den Namen “LoginActivity”. Sie wird dazu benutzt, nur berechtigten Nutzern
Zugriff auf die Smarthome-App zu gewähren. Für die Smartwatch-App wird noch keine Activity
angelegt. Mit einem Klick auf “Finish” wird das Projekt
angelegt und du landest im Editor von Android Studio. Links vom Editor siehst du das Projektverzeichnis,
in dem du alle Projektdateien findest. Suche im Projektverzeichnis die Datei “AndroidManifest.xml”
und öffne sie. In dieser Datei fügst du nun über dem application-Tag
einen uses-permission-Tag ein und gibst ihm den Namen “android.permission.INTERNET”. Damit hat die App nun die Berechtigung, Verbindungen
mit dem Internet herzustellen. Alle Berechtigungen, die hier eingetragen
werden, werden dem Nutzer bei der Installation der App angezeigt. Öffne nun im Projektverzeichnis den Ordner
“Gradle Scripts” und dort die Datei “build.gradle (Module: mobile)”. Dort fügst du nun dem dependencies-Block
die Zeilen “compile ‘com.android.volley:volley:1.0.0′”, “compile ‘com.android.support:cardview-v7:23.4.0′”
und “compile ‘com.android.support:recyclerview-v7:23.4.0′” hinzu. Diese 3 Bibliotheken werden von der App verwendet. Volley ist eine Bibliothek für HTTP-Requests,
Cardview ist GUI-Element mit abgerundeten Ecken und leichtem Schatten,
dass auch in vielen aktuellen Apps verwendet wird und RecyclerView ist eine ressourcenschonende
Liste. Als nächstes werden die Farb-Variablen für
die App definiert. Dazu öffnest du die Datei “colors.xml” im
Verzeichnis “res ->values”. Vier Variablen existieren schon. Sie haben einen String als Namen und eine
Hexadezimal-Zahl als Farbwert. Die Werte dieser Variablen werden nun geändert. Die Variable “colorHeaderStart” wird auf “#00ccff”
geändert, “colorPrimary” erhält den Wert “#0099cc”,
“colorPrimaryDark” wird zu “#0077aa” und der Variable “colorAccent” wird vorerst eine Referenz
auf die Farbe “colorPrimary” übergeben. Anschließend werden die folgenden Farb-Variablen
erstellt: “textcolorDark” mit “#666666”
“textColorLight” mit “#ffffff” und “layoutBackground” mit dem Wert “#eeeeee” Auch für häufig genutzte Abstände und Größen
werden eigene Variablen erstellt. Dazu öffnest du die Datei “dimens.xml” und
fügst 4 neue Größen-Variablen hinzu. “cardViewElevation” mit “4dp”
“cardViewCornerRadius” mit “4dp” “recyclerItemHeight” mit “200dp”
und “recyclerItemWidth” mit “120dp”. Danach wird eine neue Activity für das Hauptmenü
der App erstellt. Dazu klickst du mit der rechten Maustaste
auf eine bereits erstellte Activity oder andere Java-Klasse,
wählst dort “New”, “Activity” und anschließend “Navigation DrawerActivity”. Diese Activity trägt den Namen “MainActivity”. Füge der Datei MainActivity.java nun über
der onCreate-Methode die folgende Zeile hinzu: “final static String EXTRA_ROOMS=”EXTRA_ROOMS”;”
Mit einem Extra können Daten, die zwischen Activities ausgetauscht werden eindeutig identifiziert
werden. Als nächstes wird eine Klasse erstellt, die
von der App für HTTP-Requests verwendet wird. Dazu klickst du mit rechts auf eine Java-Klasse
und wählst “New” ->”Java Class”. Dieser Klasse gibst du den Namen “HTTPRequest”. In dieser Klasse erstellst du nun eine statische
Methode “sendRequest” mit den Parametern context, requestData, serverIp und callback. Im Methodenrumpf werden ein RequestQueue-Objekt
und ein StringRequest-Objekt erzeugt. Dem RequestQueue-Objekt wird der Kontext der
App übergeben und dem StringRequest-Interface die Request-Methode,
die URL, eine Implementierung des Response.Listener-Interfaces, die ausgeführt wird,
wenn die Anfrage erfolgreich ausgeführt wurde und eine Implementierung des Response.ErrorListener-Interfaces,
die bei Fehlern ausgeführt wird. In der Interface-Methode onResponse() wird
die onRequestResult-Methode des Callbacks aufgerufen und in der Methode onErrorResponse()
wird die Methode onError() des Callbacks ausgeführt. Außerdem implementiert das StringRequest-Objekt
die Methode getParams(), indem das requestData-Objekt zurückgegeben wird. Anschließend wird das StringRequest-Objekt
zur Warteschlange des RequestQueue-Objekts hinzugefügt. Nun wird das Interface HTTPRequestCallback
erstellt, das die beiden Methoden onRequestResult() und onError() enthält. Beide Methoden erhalten als Parameter einen
String und haben keinen Rückgabewert. Das war’s für dieses Video mit der Android-App. Im nächsten Video wird der Login-Bildschirm
designed und implementiert. Danke für’s Zuschauen und bis zum nächsten
mal.

One thought on “Smarthome App #1: Projekt erstellen | Smarthome Blogger

Leave a Reply

Your email address will not be published. Required fields are marked *