# lamw **Einführung in die Android-Entwicklung mit Lazarus und Free Pascal** Demo-Projekt am Beispiel der Steuerung einer Fritzbox (Smart Home) Die bevorzugten Programmiersprachen für Android-Apps sind Java und Kotlin. Hier soll es jedoch um den **Free Pascal Compiler** (FPC) gehen. Zusammen mit der Entwicklungsumgebung **Lazarus** und einigen Erweiterungen lassen sich Android-Apps relativ komfortabel erstellen. Wir erläutern die nötigen Schritte am Beispiel eines Projekts, mit dem sich eine Fritzbox (Smart Home) steuern lässt. Die Android-Beispiel-App erläutert die folgenden Aufgaben: - Android-Benutzeroberfläche erstellen und Elemente ausrichten - Bedienelemente zur Laufzeit erzeugen - Einstellungen speichern und wieder einlesen - Abfragen über einen HTTP-Client **Projekt für Linux/Windows** SmartFritzSchalter eignet sich für Linux oder Windows. Es enthält im Wesentlichen den gleichen Quellcode wie die Android-App, was die Programmlogik betrifft. Es empfiehlt sich, immer zuerst für Linux zu programmieren, soweit das die gewünschten Funktionen zulassen. Ein Linux-Projekt lässt sich debuggen, was bei der Android-App nur sehr eingeschränkt möglich ist. **Benötigte Software** Fpcupdeluxe (Lazarus/FPC installieren): https://github.com/LongDirtyAnimAlf/fpcupdeluxe/releases Zusätzliche Pakete für Linux (Ubuntu/Mint): ```bash sudo apt install libx11-dev libgdk-pixbuf2.0-dev libpango1.0-dev libgtk2.0-dev subversion git freeglut3-dev ``` Zusätzliche Module (über Fpcupdeluxe installieren): ECCControls, hashlib4pascal und lamw Android Studio für Linux (Android SDK/NDK): https://developer.android.com/studio **So sieht die Demo-App unter Android aus:** ![screenshot](images/MainScreen.jpg) ![screenshot](images/Settings.jpg) ![screenshot](images/Infos.jpg) ![screenshot](images/Messages.jpg)