Android-Apps programmieren - Professionelle App-Entwicklung mit Android Studio 4

Book description

  • Praktischer Einstieg von den Grundlagen der App-Programmierung bis hin zu fortgeschrittenen Techniken
  • Vollständiges Beispielprojekt mit zahlreichen Schritt-für-Schritt-Anleitungen und Praxis-Tipps
  • Alle Komponenten professioneller Apps: von einer einfachen Activity über Layouts mit XML und Datenbanken bis hin zu Android-Binding und automatisierten Tests

Mit diesem Buch erhalten Sie einen praktischen Einstieg in die Android-App-Programmierung mit Java. Sie lernen alles, was für die professionelle App-Entwicklung wichtig ist: von den Grundbausteinen einer App über die Layout-Erstellung mit XML bis hin zum Einsatz von Datenbanken.

Der Autor führt Sie anhand eines durchgängigen Praxisbeispiels durch den gesamten Entwicklungsprozess einer App und zeigt Ihnen, wie Sie Android Studio effektiv einsetzen. Dabei lernen Sie Schritt für Schritt, wie Sie Daten verarbeiten und mit Room in einer Datenbank speichern, Apps mit mehreren Bildschirmseiten programmieren, Dialoge anzeigen, Berechtigungen abfragen, mit Hintergrundprozessen arbeiten, Internet-Services einbinden und vieles mehr.

Abschließend erläutert der Autor, wie Sie Ihre App testen und im Google Play Store sowie auf der eigenen Website veröffentlichen. Darüber hinaus zeigt er Ihnen verschiedene Möglichkeiten der Monetarisierung auf.

Grundkenntnisse in objektorientierter Programmierung, idealerweise mit Java, sowie im Umgang mit XML werden vorausgesetzt.

Aus dem Inhalt:

  • Grundlagen der App-Programmierung
  • Einführung in Android Studio
  • Gradle als Build-System
  • Projektanlage
  • Layouts erstellen mit XML
  • Activities und Seitennavigation
  • Einbinden einer SQLite-Datenbank mit Room
  • Export von Daten
  • Dialoge
  • Datenverarbeitung im Hintergrund
  • Berechtigungen
  • Trennung von Layout, Layout-Logik und Programmlogik mit Android-Binding
  • Internet-Services einbinden
  • Automatisierte Tests und Unit Testing
  • App veröffentlichen
  • Praktisches Glossar

Table of contents

  1. Android-Apps programmieren
    1. Professionelle App-Entwicklung mit Android Studio 4
  2. Impressum
  3. Kapitel 1: Einleitung
    1. 1.1 An wen richtet sich dieses Buch?
      1. 1.1.1 Voraussetzungen
    2. 1.2 Technischer Stand
    3. 1.3 Was finden Sie in diesem Buch?
    4. 1.4 Was behandelt dieses Buch nicht?
    5. 1.5 ‌‌Konventionen
      1. 1.5.1 XML-Dateien
      2. 1.5.2 Java-Dateien
    6. 1.6 Danksagung
    7. 1.7 Änderungen in der 3. Auflage
  4. Kapitel 2: Grundlagen
    1. 2.1 Entwicklungsumgebung
      1. 2.1.1 Historie
      2. 2.1.2 Installation
      3. 2.1.3 Erster Start von Android Studio
      4. 2.1.4 Struktur der Entwicklungsumgebung
      5. 2.1.5 Build-System‌ Gradle
  5. Kapitel 3: Anlegen einer neuen App
    1. 3.1 ‌‌Projektanlage
      1. 3.1.1 Ein neues Projekt starten‌
    2. 3.2 Ausführen der App im Emulator
      1. 3.2.1 Neues‌ AVD anlegen
      2. 3.2.2 ‌‌Starten der App
    3. 3.3 App-Bausteine
      1. 3.3.1 ‌‌Manifest
      2. 3.3.2 ‌‌Activity
      3. 3.3.3 ‌‌Fragment
      4. 3.3.4 ‌Ressourcen
      5. 3.3.5 Layout
    4. 3.4 ‌Layout-Erstellung
      1. 3.4.1 ‌Layout erstellen
      2. 3.4.2 ‌Ressourcen für die Texte
      3. 3.4.3 Ressourcen und‌ Spezialisierungen
  6. Kapitel 4: Basis App-Logik
    1. 4.1 ‌‌Template-Pattern
    2. 4.2 Logik der Zeiterfassungs-App
      1. 4.2.1 Suche der‌ Oberflächenelemente
      2. 4.2.2 ‌Interaktionen des Benutzers verarbeiten
      3. 4.2.3 Formatierung der Ausgabe
    3. 4.3 ‌Fehlersuche (‌Debuggen)
  7. Kapitel 5: Datenbank – SQLite
    1. 5.1 Überblick über die‌ Datenbanken unter Android
      1. 5.1.1 ‌‌SQLite
      2. 5.1.2 Alternativen zu‌‌ SQLite
    2. 5.2 Datenbank definieren
      1. 5.2.1 Entwurf der‌‌ Datenbank-Struktur
      2. 5.2.2 Hilfsmittel für SQLite
    3. 5.3 Anlegen der Datenbank mit‌ Room
      1. 5.3.1 Abhängigkeiten zur Room-Bibliothek hinzufügen
      2. 5.3.2 Eine ‌Entität hinzufügen
      3. 5.3.3 Klasse für Datenzugriff anlegen
    4. 5.4 Auf die Datenbank zugreifen
      1. 5.4.1 Erstellen der eigenen Application-Klasse
      2. 5.4.2 Erstellen eines Executors
      3. 5.4.3 Datenbank als Singleton
      4. 5.4.4 Optimierung für den Datenbankzugriff
    5. 5.5 ‌‌‌Überprüfung der Daten
    6. 5.6 Automatische ‌‌Konvertierung mit Room
      1. 5.6.1 Datenklasse (‌Entity) anpassen
      2. 5.6.2 Logik für den Start-Button
      3. 5.6.3 Logik für den Beenden-Button
    7. 5.7 Laden und‌‌ Validieren der Daten
      1. 5.7.1 Aufräumen in der Klasse
      2. 5.7.2 UI-Optimierung
    8. 5.8 Zusammenfassung
  8. Kapitel 6: Navigation
    1. 6.1 Menü-Ressourcen
      1. 6.1.1 ‌Menütypen
      2. 6.1.2 ‌Menü anlegen
      3. 6.1.3 ‌Menü einbinden
      4. 6.1.4 Auf Menü-Aktionen reagieren
    2. 6.2 ‌Navigation unter Android
      1. 6.2.1 ‌Implizite Intents
      2. 6.2.2 ‌Explizite Intents
    3. 6.3 Activity für die Auflistung
      1. 6.3.1 Erstellen der‌ Layouts
      2. 6.3.2 Erstellen des Adapters
      3. 6.3.3 Anbinden der Daten an die Liste
      4. 6.3.4 Optimierung der Auflistung
  9. Kapitel 7: Dialoge
    1. 7.1 ‌‌Dialoge nutzen
      1. 7.1.1 Löschen eines Eintrags aus der Liste
    2. 7.2 Daten mit Dialogen bearbeiten
      1. 7.2.1 Activity mit Parametern
      2. 7.2.2 Bearbeitung der Daten in Dialogen
  10. Kapitel 8: Datenbank Erweiterung und Migration
    1. 8.1 Version der Datenbank als ‌‌Snapshot speichern
    2. 8.2 Neue Spalte anlegen und migrieren
      1. 8.2.1 Erweiterung des Datenobjekts
      2. 8.2.2 ‌‌Migration der neuen Datenbankversion
      3. 8.2.3 Pausenspalte anlegen
    3. 8.3 Inhalt der neuen Felder in die Datenbank speichern
  11. Kapitel 9: Hintergrundprozesse und Berechtigungen
    1. 9.1 Export der Daten als CSV-Datei
      1. 9.1.1 ‌Berechtigungen
      2. 9.1.2 Schreiben der Daten als CSV-Datei
      3. 9.1.3 ‌‌‌Fortschrittsanzeige für den Export
      4. 9.1.4 IntentService
    2. 9.2 ‌‌‌Internet-Zugriff
      1. 9.2.1 Internetseiten in der App anzeigen
      2. 9.2.2 Zugriff auf REST-Services
      3. 9.2.3 Download der Daten aus dem Internet im Hintergrund
      4. 9.2.4 JSON-Daten mit Bordmitteln auslesen
      5. 9.2.5 JSON-Daten mit‌‌ gSON auslesen
      6. 9.2.6 Generieren einer‌ HTML-Seite
      7. 9.2.7 Darstellen in einer Liste
      8. 9.2.8 ‌‌OkHttp als Http-Client
  12. Kapitel 10: App-Optimierungen
    1. 10.1 ‌‌Storage Access Framework (SAF)
      1. 10.1.1 Anlegen einer neuen Datei mit SAF
      2. 10.1.2 ‌‌Exporter erweitern
    2. 10.2 Android‌‌-Binding
      1. 10.2.1 Projekt für Binding bereit machen
      2. 10.2.2 Arbeiten mit Bindings
    3. 10.3 ‌Veröffentlichen der fertigen App
      1. 10.3.1 ‌‌App-‌Icon erstellen
      2. 10.3.2 Signierung mit Zertifikat
      3. 10.3.3 ‌‌Veröffentlichung
  13. Kapitel 11: Automatisierte Tests
    1. 11.1 MonkeyRunner
    2. 11.2 ‌Unit-Tests
      1. 11.2.1 Testen des Ladens aus dem gespeicherten Zustand
      2. 11.2.2 Testen mit‌ Mocks
    3. 11.3 ‌Android-Tests
    4. 11.4 ‌Oberflächen-Tests
      1. 11.4.1 Optimierung des Espresso-Codes
  14. Kapitel 12: Schlusswort und Ausblick
    1. 12.1 Beste Anlaufstellen für die erste Suche
    2. 12.2 Themen, die in diesem Buch (noch) nicht behandelt wurden
      1. 12.2.1 Kotlin
      2. 12.2.2 Bluetooth
      3. 12.2.3 ‌Android Architecture Patterns
      4. 12.2.4 ‌‌Android Wear/‌Android TV/‌‌Android Auto/‌‌Android IoT
      5. 12.2.5 ‌‌Monetarisierung
    3. 12.3 Verbesserungsvorschläge/Fehler
  15. Anhang A: Anhang
    1. A.1 Glossar
    2. A.2 Installation von ‌HAXM
      1. A.2.1 Voraussetzungen
      2. A.2.2 Installation
    3. A.3 Smartphone oder Tablet als ‌‌Entwickler-Gerät einrichten
    4. A.4 Vorhandenen ‌‌Quellcode in Android Studio öffnen
    5. A.5 ‌‌Tastatur-Kürzel
      1. A.5.1 Suche Aktion

Product information

  • Title: Android-Apps programmieren - Professionelle App-Entwicklung mit Android Studio 4
  • Author(s): Eugen Richter
  • Release date: January 2021
  • Publisher(s): mitp Verlag
  • ISBN: 9783747502181