Android System Engineering Training

Die freie Verfügbarkeit von Android als Plattform macht es endlich möglich, selbstentwickelte Geräte sicher und nachhaltig ins Internet zu bringen. Lernen Sie, welche Vorteile Android gegenüber klassischen "Embedded Linux"-Systemen bietet und wie sich diese Vorteile effektiv für eigene Entwicklungen nutzen lassen.

Android Developer Training bei inovex

Die Erweiterung von Android-Geräten um eigene Hardware setzt oft eine eigens angepasste Version des AOSP (Android Open Source Project) voraus. Der Aufbau eines entsprechenden Build-Systems stellt bereits viele Entwickler vor nicht unerhebliche Herausforderungen, da sowohl Vorkenntnisse der Linux-System-Entwicklung als auch Kenntnisse über Architektur und Arbeitsweise des Android Systems benötigt werden. Die Einrichtung einer geeigneten Entwicklungs- und Debug-Umgebung bildet daher den ersten Schwerpunkt dieses Trainings.

Eine weitere Herausforderung bei der Entwicklung eigener Android-Builds ist der Entwurf „guter“ Schnittstellen und Protokolle, um Apps einen sauberen, sicheren und wartbaren Zugriff auf die eigenen Erweiterungen anzubieten. Die Entwicklung sauberer Schnittstellen zwischen Kernel/Betriebssystem auf der einen und Android App Runtime auf der anderen Seite bildet den zweiten Schwerpunkt dieses Trainings.

Der dritte Schwerpunkt beschäftigt sich mit der Frage „Fernwartung“. Nicht zuletzt aus Sicherheitsgründen müssen alle Geräte, die mit dem Internet verbunden sind, darauf vorbereitet sein, Updates ihrer Software „Over the Air“ (OTA) einzuspielen. Google hat hierzu mächtige Werkzeuge in Android eingebaut, die jedoch auf den eigenen Usecase und die eigene Systemlandschaft angepasst werden müssen.

Diese drei Schwerpunkte werden im dreitägigen Training praxisnah vermittelt: Jeder Teilnehmer bekommt ein Android Entwicklerboard nebst einer einfachen Hardware-Erweiterung. Am Ende des Trainings läuft auf diesem Board ein um den Hardware-Treiber erweitertes Android-Betriebssystem und eine einfache (selbstentwickelte) App, welche mit der Hardware Erweiterung interagiert. Das dreitägige Android System Engineering Training setzt Java-Grundkenntnisse voraus. Diese können jedoch auch in einem zusätzlichen eintägigen Java-Crashkurs im Vorfeld erworben werden.

Agenda (Java Crashkurs):

  • Die Java-Architektur (Virtuelle Maschine, Garbage Collector, ...)
  • Objektorientiertes Java im Vergleich zu C++
  • Java Generics im Vergleich zu C++ Templates
  • Java Annotationen
  • Wesentliche Standard-Java Libraries (Collections, IO, RegEx, ...)

Agenda (Training):

  • Aufsetzen einer Android-Embedded-Entwicklungsumgebung
  • Die Architektur von Android und AOSP
  • Entwicklung eines ersten eigenen Android Builds im Emulator
  • Deployment des eigenen Android Builds auf dem Entwicklerboard
  • „Over the Air“ Updates in Android einrichten und verwenden
  • Versionierung & Archievierung von Builds
  • Anbindung eigener Hardware
  • Integration von 3rd-Party-Treibern in eigene Android Builds
  • Android System Security (Zertifikate, Signaturen, ...)
  • Entwicklung wartbarer und sicherer APIs für eigene Erweiterungen
  • Zugriff aus Apps auf eigene Hardware-Erweiterungen

Zielgruppe: Embedded Linux Entwickler (Voraussetzung: gute C/C++ Kenntnisse, Java-Grundkenntnisse)

Dauer: 1 Tag Java-Crashkurs (optional), 3 Tage

Sie haben Interesse an diesem Inhouse Training?

Dann rufen Sie uns an unter +49 (0)172 5673497 oder schreiben Sie uns eine E-Mail. Wir freuen uns auf Ihre Nachricht und senden Ihnen gerne ein individuelles Angebot zu!

Collin Rogowski

Fragen zu unseren Trainings?

Collin Rogowski

Head of inovex Academy

Fachartikel Java Magazin 08/2014

Android wird andersARTig

"ART" wird die "Dalvik VM" ablösen. Was bedeutet das genau?

Zur inovex Mediathek