Jan Tittel, Jochen Baumann
Apps für Android entwickeln
Am Beispiel einer realen App
Inhalt
6
1 Einführung
10
1.1 Die Android-Plattform
11
1.2 An wen richtet sich dieses Buch?
12
1.3 Buchaufbau und verwendete Technologien
12
1.4 Vorstellung des Beispielprojekts
13
1.5 Danksagung
18
2 Einrichten der Arbeitsumgebung
20
2.1 Installation von Java
20
2.2 Einrichtung und Konfiguration
2.2 Einrichtung und Konfiguration
23
23
2.3 Geräte für die Entwicklung einrichten
32
3 Schnelleinstieg
3 Schnelleinstieg
36
36
3.1 Die erste App mit Eclipse und dem ADT erstellen
36
3.1.1 Ein neues Projekt in Eclipse anlegen
37
3.1.2 Erster Einstieg in Eclipse mit ADT
41
3.1.3 Die Oberfläche der App anpassen (XML-Layout)
44
4.1.4 Der App Funktionalität geben
50
3.1.5 Die Struktur von Android-Projekten
52
3.2 Die App im Emulator und auf einem Gerät testen
55
3.2.1 Emulator definieren
56
3.3.2 Tastaturbefehle für den Android-Emulator
58
3.2.3 Die App auf einem Emulator oder Gerät starten
58
3.3 Crash-Kurs in Java
61
3.3.1 Werte einer Variablen zuordnen
63
3.3.2 Bezeichner und Schlüsselwörter in Java
63
3.3.3 Klassen und Objekte in Java
64
3.3.4 Objekte erzeugen und initialisieren
66
3.3.5 Methoden von Objekten aufrufen
66
3.3.6 Auf Eigenschaften von Objeken zugreifen
67
3.3.7 Abstrakte Klassen und Methoden
68
3.3.8 Interfaces (Schnittstellen)
70
3.3.9 Java Packages (Pakete)
71
3.3.10 Logging
71
3.3.11 Kommentare
71
3.3.13 Ablaufsteuerung mit einfacher Verzweigung
72
3.3.13 Ablaufsteuerung mit Mehrfachverzweigungen
73
3.3.14 Wiederholungen mit Schleifen
73
3.3.15 Fehlerbehandlung
74
4 Grundlagen von Layouts, Views, Komponenten und Intents: Erste Oberflächen erstellen
76
4.1 Zielsetzung
76
4.2 Layouts, Views und Komponenten
76
4.2.1 Layouts
77
4,2,2 Views und Widgets
78
4.2.3 Bausteine einer Android-Anwendung
78
4.3 Layouts und Activities
84
4.3.1 Layouts erstellen
84
4.3.2 Activities
89
4.4 Ereignisse und Intents
90
4.4.1 Auf Klick-Ereignisse der Oberfläche reagieren
91
4.4.2 Mit Intents eine andere Activity aus der aktuellen Activity aufrufen
91
4.5 Activities im Manifest registrieren
93
5 Menüs und Ressourcen
94
5.1 Menüs
94
5.1.1 Optionsmenü erstellen
94
5.2 String-Ressourcen
97
5.2.1 Eine String-Ressource anlegen und referenzieren
97
Drawable-Ressourcen
98
5.3.1 Drawable-Ressourcen verwenden
98
5.3.2 ActionBar-Icons erstellen und verwenden
99
5.3.3 xEffekte durch Drawables
100
6 Eigene Klassen, Listen und Adapter
104
6.1 Eigene Klassen erstellen
104
6.2 Enumerationen
106
6.3 Arrays, Listen und Adapter
107
6.3.1 Einfache Strings in Spinner und Liste anzeigen
108
6.3.2 Eigene Objekte in einer ListView anzeigen
110
6.3.3 ListItem und ListAdapter für eigene Objekte
112
6.3.4 ListItem auswählen
116
6.3.5 LogCat verwenden
117
6.4 Mit Dateien arbeiten
118
6.4.1 Datei im Dateisystem speichern
119
6.4.2 Inhalte von Verzeichnissen auflisten und in ListView anzeigen
126
6.4.3 Dateien löschen
131
6.4.4 Dateien lesen
133
6.4 Zwischenstand der App (Version 0.3)
137
7 ActionBar, WebView und E-Mail
138
7.1 ActionBar erweitern und Funktionen nutzen
138
7.1.1 Eigenes Layout-Element in der ActionBar verwenden
7.1.1 Eigenes Layout-Element in der ActionBar verwenden
138
138
7.2 E-Mail mit Anhang versenden
142
7.3 Lokale und externe Webseiten anzeigen
145
7.3.1 Erstellen und Anpassen der WebView Activity
145
7.4 Zwischenstand der App (Version 0.4)
149
8 Fragments, Touch Events und Canvas
150
8.1 Fragments
150
8.1.1 Fragments, Drawable-Ressourcen
151
8.2 Image View erweitern, Canvas
8.2 Image View erweitern, Canvas
159
159
8.3 Activity for Result und Grafikbearbeitung
165
8.3.1 Mit Activity for Result den Pfad zum Bild ermitteln und sich das Ergebnis in einem Toast anzeigen lassen
165
8.3.2 Ein Bild in ein Bitmap umwandeln
166
8.4 Zwischenstand der App (Version 0.5)
170
9 Audiodaten aufnehmen abspielen und mit Gesten steuern
172
9.1 Touch Events auswerten mit GestureDetector
172
9.2 Audios aufnehmen und abspielen
175
9.2.1 Audio-Notizen erstellen
175
9.2.2 Audio-Notiz abspielen
176
9.3 Threading
178
9.4 Zwischenstand der App (Version 0.6)
179
10 Dialog-Fragments und Datenbank
180
10.1 Dialog-Fragments
180
10.1.1 Klasse für Erinnerungen, Reminder
186
10.2 Datenbank in Android verwenden
188
10.2.1 Datenbank erstellen
189
10.2.2 Datensätze hinzufügen, ändern und löschen
192
10.2.3 Alle Datensätze einer Tabelle auslesen
195
10.2.4 Datenbankzugriff per Kommandozeile oder Eclipse Plug-in
196
10.2 Daten aus der Datenbank anzeigen
198
10.4 Zwischenstand der App (Version 0.7)
199
11 Google Maps Api V2 und LocationService
200
11.1 Vorbereitungen zur Verwendung von Google Maps Api V2
200
11.1.1 API-Key und Rechte im Manifest anpassen
204
11.2 Ortsbestimmung mit dem LocationService
207
11.3 Eigene Activity for Result für die Map
209
11.4 Zwischenstand der App (Version 0.8)
217
12 Zeit- und ortsbasierte Erinnerungen, lokale Notifications
218
12.1 Zeitbasierte Erinnerungen mit dem AlarmManager
218
12.2 Mit BroadcastReceiver und NotificationManager
220
12.3 Ortsbasierte Erinnerungen mit ProximityAlerts
221
12.4 Zwischenstand der App (Version 0.9)
223
13 Lokalisierung, Icons und Startbilder – Vorbereitung für die Veröffentlichung im Play Store
224
13.1 Die App lokalisieren
224
13.1.1 String-Ressourcen lokalisieren
225
13.2 Icons und Bilder
225
13.3 Der letzte Feinschliff
226
13.3.1 Mit Android Lint den Code verbessern
229
14 Veröffentlichung einer App im Play Store
232
14.1 App mit eigener Signatur exportieren
232
14.1 App in den Play Store hochladen
235
14.3 Store-Eintrag erstellen und Icons und Screenshots verwalten
237
14.4 Preisgestaltung und Vertrieb
237
Index
240
© 2009-2023 ciando GmbH