Android (eBook)
386 Seiten
Carl Hanser Fachbuchverlag
978-3-446-42071-7 (ISBN)
ANDROID AUF DEM VORMARSCH
- Erfahren Sie von Programmierexperten, wie Sie professionelle Anwendungen mit Android entwickeln.
- Lernen Sie die Erfolgsfaktoren für die Vermarktung Ihrer Applikationen kennen.
- Profitieren Sie von den zahlreichen Praxistipps und Beispielen.
- Topaktuell: Geht auch auf das SDK 1.5 ein.
- Vertiefen Sie Ihr Wissen mit den Online-Ergänzungen: Übungsmaterial und Lernvideos zum Thema im Internet.
Android, der neue Star unter den mobilen Plattformen, wälzt unter der Führung von Google den Markt der mobilen Applikationen um. Dieses Praxisbuch zeigt Ihnen, wie Sie schnell qualitativ hochwertige Android-Applikationen entwickeln und sie erfolgreich vermarkten. Mit einer Darstellung der Architektur von Android, mit den Anforderungen an die Hardware und mit den Installationsschritten und Werkzeugen, die die Voraussetzung für den effektiven Einsatz von Android schaffen, führen die Autoren Sie in die Android-Welt ein. Auch die Besonderheiten von Android, wie z.B. Activities und ContentProvider, kommen nicht zu kurz.
Weil Usability bei mobilen Geräten besonders wichtig ist, liegt ein Schwerpunkt des Buches auf der Erstellung von Benutzungsschnittstellen. Sie lernen die wichtigsten APIs kennen, dazu zählen Grafik, Multimedia, Internet, Datenbanken, Kontaktdaten, Lokalisierung, SMS und Zugriff auf Sensoren. Und weil Android-Applikationen auch vermarktet sein wollen, erhalten Sie auch einen Überblick über Themen wie Suchmaschinenoptimierung und Online-Marketing für mobile Applikationen.
Viele praxisnahe Beispiele und Tipps helfen Ihnen, das Gelernte sofort auszuprobieren. Auf der Webseite zum Buch können Sie mit Hilfe von Lernvideos und weiteren Beispielen Ihr Wissen vertiefen.
Aus dem Inhalt: Android Development Tools - Vermarktung von Android-Applikationen - Applikationen und Aktivitäten - Intent und BroadcastReceiver - Androids Benutzungsschnittstellen - Ereignisse der Benutzungsschnittstelle
Prof. Dr. Heiko Mosemann ist Professor an der Hochschule Bremen und hat zusammen mit Dr. Matthias Kose die Firma Mobilinga GmbH (www.mobilinga.com) gegründet, die Lernsoftware für Handys entwickelt. Beide haben langjährige Erfahrung in der Programmierung von Handys und haben ihr Wissen sehr erfolgreich in Industrieprojekten umgesetzt.
Inhaltsverzeichnis 6
Vorwort 14
1 Android stellt sich vor 20
1.1 Warum Java? 21
1.2 Einschränkungen 22
1.3 Android-Endgeräte 22
1.4 Android Architektur 24
1.5 Open Handset Alliance 29
2 Erste Schritte 36
2.1 Android sagt ”Hallo“ 36
2.2 Androids Installation 37
2.3 Beispielprogramme im Android SDK 40
3 Android Development Tools 44
3.1 Android Tools 44
3.2 Android auf einem Gerät 57
4 Vermarktung von Android-Applikationen 62
4.1 Generelle Erfolgsfaktoren mobiler Applikationen 62
Kommunikationsstrecke 69
4.2 Android Market 70
4.3 Weitere Android-Portale 76
4.4 Distribution von Android-Applikationen auf der eigenen Website 78
4.5 Suchmaschinenmarketing 79
5 Applikationen und Aktivitäten 92
5.1 Komponenten einer Applikation 92
5.2 Der Lebenszyklus einer Applikation 96
5.3 Ressourcen 98
5.4 Aktivitäten 104
6 Intent und BroadcastReceiver 108
6.1 Die Klasse Intent 108
6.2 BroadcastReceiver 112
7 Androids Benutzungsschnittstellen 116
7.1 XML-basierte Layouts 118
7.2 Klassendiagramme der Views und ViewGroups 160
7.3 Das Werkzeug Hierarchy Viewer 160
7.4 Das Werkzeug DroidDraw 160
7.5 Methoden zur Verwaltung der Klasse View 162
8 Ereignisse der Benutzungsschnittstellen 168
8.1 Die Listener der Klasse View 168
8.2 Ereignisbehandlung für Klicks 169
8.3 Ereignisbehandlung für Tastatureingaben 173
8.4 Ereignisbehandlung bei Änderung des Fokus 177
8.5 Ereignisbehandlung bei Berührung des Bildschirms 182
8.6 Ereignisbehandlung bei den Klassen RatingBar und SeekBar 185
8.7 Ereignisbehandlung bei den Klassen CompoundButton, CheckBox, RadioButton und ToggleButton 185
8.8 Ereignisbehandlung bei der Klasse ViewGroup 186
8.9 Ereignisbehandlung bei der Klasse AdapterView 186
8.10 Ereignisbehandlung bei der Klasse AbsListView 187
8.11 Ereignisbehandlung bei der Klasse ExpandableListView 187
8.12 Ereignisbehandlung bei den Klassen DatePicker und TimePicker 192
8.13 Ereignisbehandlung bei der Klasse TabHost 193
8.14 Ereignisbehandlung bei der Klasse RadioGroup 195
8.15 Ereignisbehandlung bei der Klasse ViewStub 195
9 Options- und Kontextmenüs 196
9.1 Optionsmenüs 196
9.2 Kontextmenüs 204
10 Dialoge und Toasts 208
10.1 Die Klasse Dialog 208
10.2 Aktivitäten als Dialoge 213
10.3 Toast 214
11 Hintergrundarbeit 216
11.1 Die Klasse Service 216
11.2 Threads für die Arbeit im Hintergrund 219
11.3 Toasts in Arbeitsthreads 221
11.4 Benachrichtigungen mit der Klasse Notification 222
11.5 Alarme 226
12 Daten 228
12.1 Einstellungen und Zustand speichern 228
12.2 Dateien 234
12.3 Datenbanken 236
12.4 Content Provider 243
13 SMS 252
13.1 Senden einer SMS 252
13.2 Empfangen einer SMS 254
13.3 Beispiele 255
14 Android im Internet 260
14.1 Die KlasseWebView 260
14.2 Internet-Ressourcen nutzen 262
14.3 Web-Services 269
15 Location Based Services 270
15.1 Lokalisierung 270
15.2 Das Android LBS-API 273
15.3 Karten 284
16 Grafik 294
16.1 2D-Grafik 294
16.2 3D-Grafik 301
17 Zugriff auf die Hardware 320
17.1 Multimedia 320
17.2 Kamera 324
17.3 Sensoren und Aktoren 326
18 SDK 1.5 334
18.1 Installation des SDK 1.5 334
18.2 Android Virtual Device 335
18.3 Unsere Beispiele mit dem SDK 1.5 337
18.4 Charakteristische Merkmale des SDK 1.5 337
18.5 Das AppWidget-API 341
Anhang 352
A.1 XML Kurzbeschreibung 352
A.2 Klassendiagramme der Benutzungsschnittstellen 358
Glossar 368
Literaturverzeichnis 378
Stichwortverzeichnis 382
1.1 Warum Java? (Seite 2)
Warum ist Java bisher die einzige Programmiersprache, die für die Android- Programmierung unterstützt wird? Was zeichnet Java gegenüber anderen Programmiersprachen aus?
Generell kann man sicher ein schlechtes (oder gutes) Programm in jeder Programmiersprache schreiben, und die Frage, welche die beste Programmiersprache ist, bewegt viele Gemüter. Wenn Software effizient entwickelt werden soll, müssen bei der Auswahl einer Programmiersprache verschiedene Kriterien beachtet werden, wie etwa die Verfügbarkeit von Entwicklungsumgebungen. Aus softwaretechnischer Sicht hat C das Manko, dass es die Objektorientierung nicht unterstützt. Java scheint aus folgenden Gründen am besten im Vergleich zum verbleibenden hauptsächlichen Konkurrenten C++ geeignet:
- Verbreitung: Java gibt es auf über 1,8 Milliarden mobilen Endgeräten, und etwa 80 % aller neuen verkauften Handys und PDAs basieren mit der Untermenge Java ME letztendlich auf Java. Die hinter Java stehende Firma Sun erwartet wegen der immer leistungsfähigeren mobilen Endgeräte einen Konvergenztrend hin zu Java SE.
- Portabilität: Bei der Android Softwareentwicklung erfolgt die Programmierung in Java unter Verwendung einer Vielzahl von Java SE- sowie Androidspezifischer Bibliotheken. Diese relative Nähe zur Java SE-Programmierung erleichtert natürlich die Wiederverwendung von existierendem Java SE Quellcode, insbesondere wenn es sich dabei nicht um die Benutzerschnittstellen und die mobilfunkspezifischen Systemteile handelt.
- Sicherheit: Java hat ein API (Application Programming Interface) für sicherheitsrelevante Abläufe. Dazu gehören Authentifizierung, die Überprüfung von Signaturen und die Vergabe von Rechten (Autorisierung).
- Akzeptanz: Java ist auf diesem Gebiet ähnlich wie C++ sehr weit verbreitet und hat eine große Community. Es gibt Foren für Entwickler bei allen namhaften Herstellern.
- Robustheit: Java-Anwendungen laufen in einer Sandbox. Die Virtual Machine wacht darüber, dass ein Absturz eines Programms keine anderen Anwendungen stört. Darüber hinaus ist der Bytecode vor der Ausführung mit einem Prüfsummenverfahren verifiziert worden, um die Integrität des Codes sicherzustellen. Unbemerkte Veränderungen, zum Beispiel durch ein Virus, werden dadurch deutlich erschwert.
- Garbage Collector: Java hat einen Garbage Collector, sodass keine Speicherlecks auftreten. In C++ können Speicherlecks dagegen nur durch sorgfältige Programmierung vermieden werden.
Erscheint lt. Verlag | 1.1.2009 |
---|---|
Verlagsort | München |
Sprache | deutsch |
Themenwelt | Informatik ► Programmiersprachen / -werkzeuge ► Java |
Mathematik / Informatik ► Informatik ► Web / Internet | |
Schlagworte | Android • Google-Handy • Handy-Programmierung • Mobile |
ISBN-10 | 3-446-42071-1 / 3446420711 |
ISBN-13 | 978-3-446-42071-7 / 9783446420717 |
Haben Sie eine Frage zum Produkt? |
Größe: 6,9 MB
DRM: Digitales Wasserzeichen
Dieses eBook enthält ein digitales Wasserzeichen und ist damit für Sie personalisiert. Bei einer missbräuchlichen Weitergabe des eBooks an Dritte ist eine Rückverfolgung an die Quelle möglich.
Dateiformat: PDF (Portable Document Format)
Mit einem festen Seitenlayout eignet sich die PDF besonders für Fachbücher mit Spalten, Tabellen und Abbildungen. Eine PDF kann auf fast allen Geräten angezeigt werden, ist aber für kleine Displays (Smartphone, eReader) nur eingeschränkt geeignet.
Systemvoraussetzungen:
PC/Mac: Mit einem PC oder Mac können Sie dieses eBook lesen. Sie benötigen dafür einen PDF-Viewer - z.B. den Adobe Reader oder Adobe Digital Editions.
eReader: Dieses eBook kann mit (fast) allen eBook-Readern gelesen werden. Mit dem amazon-Kindle ist es aber nicht kompatibel.
Smartphone/Tablet: Egal ob Apple oder Android, dieses eBook können Sie lesen. Sie benötigen dafür einen PDF-Viewer - z.B. die kostenlose Adobe Digital Editions-App.
Zusätzliches Feature: Online Lesen
Dieses eBook können Sie zusätzlich zum Download auch online im Webbrowser lesen.
Buying eBooks from abroad
For tax law reasons we can sell eBooks just within Germany and Switzerland. Regrettably we cannot fulfill eBook-orders from other countries.
aus dem Bereich