Android App Entwicklung für Dummies. Burton Michael. Читать онлайн. Newlib. NEWLIB.NET

Автор: Burton Michael
Издательство: John Wiley & Sons Limited
Серия:
Жанр произведения: Зарубежная образовательная литература
Год издания: 0
isbn: 9783527692484
Скачать книгу
Haken muss es aber doch geben, oder? Sie können zwar nach Lust und Laune entwickeln, aber sobald Sie Ihre Anwendung über Google Play (hier laden Sie Ihre Apps hoch und veröffentlichen sie) anbieten wollen, müssen Sie eine geringe Registrierungsgebühr entrichten. Momentan beläuft sich diese auf 25 Dollar.

      Icon_Tipp.jpgWenn Sie Apps für einen Kunden entwickeln, können Sie ihm diese auch als verteilbares Paket übergeben. Ihr Auftraggeber kann die Anwendung dann über Google Play unter Verwendung seines Google-Kontos veröffentlichen. Auf diese Weise können Sie sicherstellen, dass Sie keine Gebühren für Auftragsarbeiten zahlen müssen. Selbst als echter Android-Entwickler müssen Sie dann nie Gebühren zahlen. Das ist doch wirklich toll.

      Zusammenstellung Ihres Werkzeugkastens

      Wenn Sie bereit sind, ein Android-Entwickler zu werden, können Sie sich Ihren Computer schnappen und geschwind die zur Erstellung Ihrer ersten Hit-Anwendung benötigten Werkzeuge und Frameworks installieren.

      Android-Quellcode

      Sie sollten wissen, dass Android komplett Open Source ist. Sie dürfen die Android-Quelltexte also nicht nur kostenlos nutzen, sondern auch ändern. Es steht Ihnen frei, sich diese herunterzuladen und selbst eine neue Android-Version zu erstellen. Die offenen Quelltexte des Android-Projekts finden Sie unter https://source.android.com.

      Linux-Kernel

      Android basiert auf dem quelloffenen Linux-Kernel. Die Android-Entwickler haben sich für diesen Kernel entschieden, weil er bewährte Kernfunktionen bereitstellt, auf denen die Entwicklung des Android-Betriebssystems aufsetzen kann. Unter anderem bietet der Linux-Kernel die folgenden Funktionen:

      ✔ Sicherheitsmodell: Der Linux-Kernel kümmert sich um die Sicherheit zwischen den Apps und dem System.

      ✔ Speicherverwaltung: Der Kernel übernimmt die Speicherverwaltung, wodurch Sie sich voll auf die Entwicklung Ihrer App konzentrieren können.

      ✔ Prozessverwaltung: Der Linux-Kernel verwaltet auch die Prozesse und weist diesen bei Bedarf die benötigten Ressourcen zu.

      ✔ Netzwerkstapel: Der Linux-Kernel kümmert sich auch um die Netzwerkkommunikation.

      ✔ Treibermodell: Linux soll dafür sorgen, dass alles funktioniert. Hardwarehersteller können ihre Treiber in das Linux-Betriebssystem integrieren.

Abbildung 2.1 zeigt eine Liste gebräuchlicher Android-Bibliotheken.

fg0201.jpg

Abbildung 2.1: Android und andere Bibliotheken von Drittherstellern setzen auf dem Linux-3.4-Kernel auf.

      Android-Framework

      Aufsetzend auf dem Linux-Kernel wurde das Android-Framework mit verschiedenen Funktionen entwickelt. Sie wurden von zahlreichen quelloffenen Projekten übernommen. Die Ergebnisse dieser Projekte führten zu folgender Zusammenstellung:

      ✔ Die Android-Laufzeitumgebung: Die Android-Laufzeitumgebung besteht aus den Java-Kernbibliotheken und ART (die Android Run Time). Ältere Versionen von Android (4.x und früher) verwenden die Dalvik-Laufzeitumgebung.

      ✔ Open GL (Grafikbibliothek): Diese sprachunabhängige und plattformübergreifende Anwendungsprogrammierschnittstelle (API – Application Program Interface) wird für die Erzeugung von 2D- und 3D-Computergrafiken genutzt.

      ✔ WebKit: Diese quelloffene Webbrowser-Engine bietet Funktionen zur Anzeige von Webinhalten und vereinfacht das Laden von Seiten.

      ✔ SQLite: Diese quelloffene Engine für relationale Datenbanken wurde entwickelt, um in Geräte integriert zu werden.

      ✔ Media Frameworks: Diese Bibliotheken ermöglichen die Aufnahme und Wiedergabe von Audio und Video.

      ✔ Secure Sockets Layer (SSL): Diese Bibliotheken sind für die Internet-Sicherheit zuständig.

      Abbildung 2.1 können Sie eine Liste der verbreiteten Android-Bibliotheken entnehmen.

      Anwendungsframework

      Nach dem Lesen des letzten Abschnitts werden Sie jetzt wahrscheinlich denken: »Das ist zwar schön und gut, aber was habe ich als Entwickler mit diesen Bibliotheken am Hut?« Das ist einfach, denn Sie können über Android auf all diese quelloffenen Frameworks zurückgreifen. Sie müssen sich nicht darum kümmern, wie Android mit SQLite und der Schnittstellenverwaltung zusammenarbeitet, sondern können sie einfach selbst als Android-Werkzeuge nutzen.

      Das Android-Team hat selbst auf einen Satz bewährter Bibliotheken zurückgegriffen und stellt sie Ihnen über Android-Schnittstellen bereit. Diese umschließen die verschiedenen Bibliotheken und machen sie für die Android-Plattform und Entwickler nutzbar. Bei Android arbeiten all diese Bibliotheken im Hintergrund und stellen Ihnen ihre Funktionen bereit, ohne dass Sie die angebotenen Funktionen selbst programmieren müssen. Bei diesen Schnittstellen handelt es sich unter anderem um:

      ✔ Activity Manager: Kümmert sich um die Lebensdauer der Aktivitäten.

      ✔ Telephony Manager: Bietet Zugriff auf Telefoniedienste und einige Abonnentendaten, wie zum Beispiel Telefonnummern.

      ✔ View System: Kümmert sich um die Steuerelemente (Views) und das Layout der Elemente, aus denen die Bedienschnittstelle (UI – User Interface) besteht.

      ✔ Location Manager: Ermittelt die geografische Position des Geräts.

Abbildung 2.2 können Sie entnehmen, aus welchen Bibliotheken das Anwendungsframework besteht.

fg0202.jpg

Abbildung 2.2: Ein kurzer Blick auf einen Teil des Android-Anwendungsframeworks

Vom Kernel bis hin zu den Anwendungen wurde das Android-Betriebssystem mit bewährten quelloffenen Technologien entwickelt. Dadurch können Entwickler leistungsfähige Anwendungen erstellen, die gewissermaßen von der Open-Source-Gemeinde gepflegt wurden. Abbildung 2.3 zeigt eine vollständige Übersicht über die Schichten des Android-Anwendungsframeworks.

fg0203.jpg

Abbildung 2.3: Die Schichten des Android-Anwendungsframeworks

      Icon_Tipp.jpgBei der Entwicklung von Android-Apps werden Sie manchmal Ressourcen nutzen wollen, auf die auch der Android-Systemkern zurückgreift. Ein gutes Beispiel wäre ein Symbol für eine Menüoption EINSTELLUNGEN. Dazu können Sie auf die Android-Quelltexte zugreifen, die verschiedenen Ressourcen durchsuchen und die für Ihr Projekt benötigten herunterladen. Durch die zugänglichen Quelltexte können Sie auch tiefer eintauchen und genau sehen, wie Android seine Aufgaben erledigt. Bei der Übernahme dieser Ressourcen müssen Sie allerdings gewisse Lizenzanforderungen beachten und die Google-Markenrichtlinien einhalten, über die Sie unter http://d.android.com/distribute/googleplay/promote/brand.html mehr erfahren können.

      Java-Kenntnisse

      Bei der Programmiersprache Java handelt es sich um eines der wunderbaren Werkzeuge, durch die die Android-Programmierung im Gegensatz zu anderen Mobilplattformen fast zum Kinderspiel wird. Während Sie bei anderen Sprachen den Speicher verwalten und Bytes zur Verfügung stellen und wieder freigeben müssen und dann Bits wie beim Dominospielen herumschieben müssen, gibt es bei Java die Java Virtual Machine