Android - Der schnelle und einfache Einstieg in die Programmierung und Entwicklungsumgebung

Dirk Louis, Peter Müller

Android

Der schnelle und einfache Einstieg in die Programmierung und Entwicklungsumgebung

2016

462 Seiten

Format: PDF, ePUB, Online Lesen

E-Book: €  25,99

E-Book kaufen

E-Book kaufen

ISBN: 9783446451124

 

Inhalt

6

Vorwort

16

Teil I: Einführung

20

1 Der Rechner wird vorbereitet

22

1.1 Die nötigen Hilfsmittel

22

1.2 Installation des JDK

23

1.3 Installation von Android Studio

24

1.3.1 Erster Start

26

1.4 Der Android-SDK-Manager

28

1.4.1 Die Android-Versionen

28

1.4.2 APIs/SDKs und anderes nachinstallieren

29

1.4.3 Dokumentation und API-Referenz

31

1.5 Wo Sie weitere Hilfe finden

33

1.6 Nächste Schritte

34

1.7 Frage und Antworten

34

1.8 Übungen

34

2 Auf die Plätze, fertig .?.?. App!

36

2.1 Die Ruhe vor dem Sturm

36

2.2 Das Projekt

37

2.3 Das vorgegebene Codegerüst

45

2.3.1 Die package-Anweisung

47

2.3.2 Die import-Anweisungen

47

2.3.3 Die Klassendefinition

48

2.4 Layout und Ressourcen

50

2.4.1 XML-Layouts

50

2.4.2 Ressourcen

53

2.5 Die App bauen (Build)

56

2.6 Die App im Emulator testen

57

2.6.1 AVD für Emulator anlegen

57

2.6.2 Die App testen

60

2.7 Die App auf Smartphone oder Tablet testen

64

2.8 Nächste Schritte

66

2.9 Fragen und Antworten

66

2.10 Übungen

67

3 Was wann wofür

68

3.1 Was ist zu tun? – Die drei Pfeiler der App-Erstellung

68

3.2 Wer hilft uns? – Bausteine und Klassen

69

3.2.1 Bausteine für den App-Aufbau

69

3.2.2 Klassen zur Adressierung spezieller Aufgaben

73

3.3 Wo wird was gespeichert? – Dateitypen, die Sie kennen sollten

74

3.3.1 Quelldateien

75

3.3.2 Die Datei R.java

75

3.3.3 Assets

76

3.3.4 Die Ressourcendateien

76

3.3.5 Die Manifestdatei AndroidManifest.xml

77

3.3.6 Die APK-Datei

78

3.4 Frage und Antworten

78

3.5 Übung

79

Teil II: Grundlagen

80

4 Code

82

4.1 Der Editor

82

4.1.1 Syntaxhervorhebung

83

4.1.2 Code Folding (Code-Gliederung)

84

4.1.3 Code Completion (Code-Vervollständigung)

86

4.1.4 Syntaxfehler beheben

88

4.1.5 Informationen über Klassen und Methoden

90

4.1.6 Klammerpaare identifizieren

93

4.1.7 Zeilennummern einblenden

93

4.1.8 Code generieren

94

4.1.9 Refactoring (Code umstrukturieren)

97

4.1.10 Dateiverlauf (Local History)

100

4.2 Neue Klassen anlegen

100

4.3 Fragen und Antworten

103

4.4 Übungen

103

5 Benutzeroberfläche und Layout

104

5.1 Einführung

104

5.2 Der Layout-Designer

105

5.2.1 Die Text-Ansicht (XML-Code)

107

5.2.2 Die Design-Ansicht

111

5.3 Layouts (ViewGroups)

114

5.3.1 Die allgemeinen Layoutparameter

115

5.3.2 ViewGroups

118

5.3.3 Hintergrundfarbe (oder -bild)

128

5.3.4 Der Hierarchy Viewer

131

5.4 UI-Elemente

133

5.5 Richtlinien für das Design von Benutzeroberflächen

137

5.6 Praxisbeispiel: eine Quiz-Oberfläche

140

5.7 Hoch- und Querformat

145

5.8 Das App-Symbol

146

5.9 Views im Code verwenden

147

5.9.1 Layouts laden

147

5.9.2 Zugriff auf UI-Elemente

148

5.10 Fragen und Antworten

150

5.11 Übung

150

6 Ressourcen

152

6.1 Der grundlegende Umgang

152

6.1.1 Ressourcen anlegen

153

6.1.2 Ressourcen verwenden

155

6.1.3 Ressourcen aus dem Projekt entfernen

159

6.2 Welche Arten von Ressourcen gibt es?

159

6.2.1 Größenangaben

159

6.2.2 Farben

160

6.2.3 Strings

161

6.2.4 Strings in mehreren Sprachen (Lokalisierung)

163

6.2.5 Bilder

164

6.2.6 Layouts

165

6.2.7 Menüs

166

6.2.8 Roh- und Multimediadaten

166

6.2.9 Stile

167

6.3 Alternative Ressourcen vorsehen

171

6.3.1 Das Grundprinzip

171

6.3.2 Wie stellt man konfigurationsspezifische Ressourcen bereit?

172

6.4 Fragen und Antworten

174

6.5 Übungen

175

7 Mit dem Anwender interagieren

176

7.1 Das Grundprinzip

176

7.1.1 Auf ein Ereignis reagieren

177

7.1.2 Welche Ereignisse gibt es?

180

7.1.3 Hintergrund der Ereignisverarbeitung

181

7.2 Vereinfachte Ereignisbehandlung

183

7.2.1 Ereignisbehandlung mit anonymen Listener-Klassen

184

7.2.2 Ereignisbehandlung mit anonymen Listener-Objekten

185

7.2.3 Ereignisbehandlung mithilfe der Activity-Klasse

185

7.3 Eine Behandlungsmethode für mehrere Views

186

7.4 Auf Tipp- und Wischereignisse reagieren

187

7.4.1 Tippereignisse

187

7.4.2 Wischereignisse

189

7.5 Multi-Touch und Gesten erkennen

191

7.5.1 Multi-Touch

191

7.5.2 Gestenerkennung

193

7.6 Frage und Antworten

195

7.7 Übung

195

8 App-Grundlagen und Lebenszyklus

196

8.1 Die Android-Architektur

196

8.2 Der App-Lebenszyklus

198

8.3 Der Activity-Lebenszyklus

200

8.4 Lebenszyklusdemo

202

8.5 Fragen und Antworten

206

8.6 Übung

206

Teil III: Weiterführende Themen

208

9 In Views zeichnen

210

9.1 Das Grundprinzip

210

9.1.1 Die Leinwand

210

9.1.2 Das Atelier

210

9.1.3 Die Zeichenmethoden und -werkzeuge

211

9.1.4 Wie alles zusammenwirkt

211

9.2 Grafikprimitive zeichnen

215

9.3 Bilder laden

219

9.4 In Bilder hineinzeichnen

220

9.5 Bilder bewegen

222

9.6 Verbesserungen

227

9.7 Fragen und Antworten

228

9.8 Übung

228

10 Menüs, Fragmente und Dialoge

230

10.1 Menüs

230

10.1.1 Menüverwirrungen

231

10.1.2 Menüressourcen

232

10.1.3 Menüeinträge in der ActionBar (AppBar)

234

10.1.4 Das Optionen-Menü

235

10.1.5 Das Kontextmenü

236

10.1.6 Popup-Menü

238

10.1.7 Untermenüs

239

10.1.8 Auf die Auswahl eines Menüeintrags reagieren

240

10.2 Fragmente

242

10.2.1 Was ist ein Fragment?

242

10.2.2 Ein Fragment erzeugen

243

10.2.3 Fragment zur Activity hinzufügen

244

10.2.4 Ein Fragmentbeispiel

245

10.2.5 Definition der Fragment-Klassen

248

10.2.6 Die Activity

250

10.3 Dialoge

252

10.3.1 Dialoge erzeugen

253

10.3.2 Dialoge anzeigen

254

10.3.3 Standarddialoge mit AlertDialog

254

10.3.4 Dialoge für Datums- und Zeitauswahl

256

10.3.5 Der Fortschrittsdialog

259

10.3.6 Eigene Dialoge definieren

261

10.4 Benachrichtigungen mit Toasts

263

10.4.1 Toasts im Hintergrund-Thread

263

10.5 Fragen und Antworten

264

10.6 Übungen

265

11 Mehrseitige Apps

266

11.1 Intents

266

11.1.1 Was sind Intents?

267

11.1.2 Explizite und implizite Intents

268

11.1.3 Intent-Filter

268

11.2 Activities starten mit Intents

269

11.2.1 Intent-Objekte erzeugen

270

11.3 Intents empfangen

272

11.4 Ein Demo-Beispiel

272

11.5 Ergebnisse zurücksenden

275

11.6 Fragen und Antworten

276

11.7 Übung

276

12 Daten speichern

278

12.1 Preferences

278

12.2 Dateizugriffe

279

12.2.1 Zugriff auf internen Speicher

280

12.2.2 Externer Speicher (SD-Karte)

283

12.3 Die Reaktions-App

286

12.4 Fragen und Antworten

291

12.5 Übungen

291

13 Quiz-Apps

292

13.1 Aufbau und Benutzeroberfläche

292

13.2 Die Activity (QuizActivity.java)

293

13.3 Die Fragen (Frage.java)

295

13.4 Die Spielsteuerung (SpielLogik.java)

296

13.5 Verbesserungen

298

13.6 Frage und Antwort

299

13.7 Übung

299

14 Multimedia

300

14.1 Audioressourcen

300

14.2 Soundeffekte mit SoundPool

301

14.3 Das Universalgenie: MediaPlayer

303

14.3.1 Audioressourcen abspielen

303

14.3.2 Audiodateien vom Dateisystem abspielen

304

14.3.3 Audiodateien aus dem Internet abspielen

304

14.3.4 Auf das Abspielende reagieren

305

14.3.5 MediaPlayer-Objekte wiederverwenden

306

14.3.6 Ressourcen freigeben

308

14.3.7 Audiodateien wiederholt abspielen

309

14.4 Piepen und andere Töne

309

14.5 Bilddateien anzeigen

311

14.6 Videos abspielen

312

14.7 Fotos und Videos aufnehmen

314

14.8 Fragen und Antworten

317

14.9 Übungen

317

15 Sensoren

318

15.1 Zugriff

318

15.1.1 Was Sie benötigen

319

15.1.2 Welche Sensoren sind verfügbar?

319

15.1.3 Anmeldung beim Sensor

321

15.2 Sensordaten auslesen

322

15.2.1 Beschleunigungswerte ermitteln

324

15.2.2 Lagedaten ermitteln

328

15.3 Fragen und Antworten

331

15.4 Übung

332

16 Einsatz der Datenbank SQLite

334

16.1 Was ist eine relationale Datenbank?

334

16.2 Datenbank anlegen/öffnen

335

16.2.1 onCreate()

336

16.2.2 onUpgrade()

338

16.2.3 close()

338

16.2.4 Datenbanken als Ressourcen mitgeben

338

16.3 Datenzugriffe

339

16.4 Datenbankinhalte mit ListView anzeigen

344

16.5 Fragen und Antworten

348

16.6 Übung

349

17 Geolokation

350

17.1 Zugriff

350

17.1.1 Verfügbarkeit feststellen

350

17.1.2 Daten empfangen

351

17.1.3 Empfänger abmelden

352

17.2 Geokoordinaten

353

17.2.1 Sexagesimale und dezimale Darstellung

353

17.2.2 Das Location-Objekt

353

17.3 Eine GPS-Tracker-App

355

17.4 Fragen und Antworten

359

17.5 Übung

359

18 Brettspiel-Apps (TicTacToe)

360

18.1 Aufbau und Benutzeroberfläche

360

18.2 Die Start-Activity (MainActivity)

362

18.3 Spielfeld und Logik (TicTacToeView)

363

18.3.1 Vorbereitungen

363

18.3.2 Spielfeld zeichnen

364

18.3.3 Spielerzug durchführen

366

18.3.4 Computerzug mit AsyncTask durchführen

367

18.4 Verbesserungen

370

18.5 Frage und Antwort

370

18.6 Übung

371

19 Tipps und Tricks

372

19.1 Das Smartphone vibrieren lassen

372

19.2 UI-Code periodisch ausführen lassen

373

19.3 Bildergalerien mit GridView und BaseAdapter

376

19.3.1 Die Bildressourcen

377

19.3.2 Die Adapter-Klasse

377

19.3.3 Die GridView

380

19.3.4 Angeklickte Bilder als Vollbild anzeigen

381

19.4 Spinner verwenden (Listenfelder)

383

19.4.1 Den Spinner mit Daten füllen

384

19.4.2 Ereignisbehandlung

385

19.5 Mehrsprachige Apps

386

19.6 Schlussbemerkung

389

Teil IV: Anhänge

390

Anhang A: Apps veröffentlichen oder weitergeben

392

A.1 Die App vorbereiten

392

A.2 Digitales Signieren

394

A.3 Die App exportieren und signieren

395

A.4 Bei Google Play registrieren

397

A.4.1 Steuerliche Aspekte bei App-Verkauf

398

A.5 App hochladen

399

A.6 Weitergabe an Bekannte

399

Anhang B: Android Studio

402

B.1 Android-Projekt anlegen

402

B.2 Projekt bauen (Build)

402

B.3 Projekte löschen

404

B.4 Eclipse-ADT-Projekt importieren

404

B.5 Run-Konfigurationen anpassen

404

B.6 Fenster zurücksetzen

405

B.7 Apps exportieren

405

B.8 Kleines Android Studio-Wörterbuch

405

Anhang C: Emulator, ADM & Debugger

408

C.1 Der Emulator

408

C.1.1 AVD-Dateien

409

C.1.2 Emulator starten

412

C.1.3 Die Emulator-Bedienung

414

C.1.4 Apps installieren und deinstallieren

415

C.2 Android Device Monitor (ADM)

415

C.3 Der Debugger

420

C.3.1 Debug-Lauf starten

420

C.3.2 Debug-Möglichkeiten

421

C.4 Debugging-Beispiel

423

Anhang D: Das Material zum Buch

428

Anhang E: Lösungen

430

Anhang F: Glossar

446

Index

456

 

© 2009-2024 ciando GmbH