Publication date : 07/08/2024

Course : Android, building your own embedded system

Practical course - 4d - 28h00 - Ref. AEM
Price : 2550 € E.T.

Android, building your own embedded system




This course will teach you how to develop an Android-based embedded system. You will implement the compilation chain to build an Android kernel adapted to your own hardware. You'll also see how to add peripherals and customize the file system.


INTER
IN-HOUSE
CUSTOM

Practical course in person
Available in English on request

Ref. AEM
  4d - 28h00
2550 € E.T.




This course will teach you how to develop an Android-based embedded system. You will implement the compilation chain to build an Android kernel adapted to your own hardware. You'll also see how to add peripherals and customize the file system.


Teaching objectives
At the end of the training, the participant will be able to:
Understanding the inner workings of Android
Implementing the Android manufacturing system
Adapting Android to specific hardware
Adding devices to an existing Android

Intended audience
Architects, developers.

Prerequisites
Good knowledge of C and Linux or knowledge equivalent to that provided by the courses "Industrial, real-time and embedded Linux" (ref. LXT) and "BSP UBoot and embedded Linux" (ref. BLE).

Practical details
Hands-on work
Porting Android to specific hardware.
Teaching methods
Presentation followed by practical exercises.

Course schedule

1
Introduction to Android

  • Historical background.
  • The various players - Google, Linaro...
  • Android architecture overview.

2
The Android manufacturing system (BUILD)

  • Using GIT to access Android sources.
  • Compiler tools and Android emulator.
  • Use of the BUILD system and production of a first image.
Hands-on work
Use of the compiler chain and emulator.

3
The Linux kernel for Android

  • Background on the Linux kernel and its development.
  • Licenses: GPL, Linux, Android, third-party.
  • Kernel configuration and compilation.
  • The benefits of Android.
  • Android boot, Android boot specifications.
Hands-on work
Configure and build an Android kernel, boot on the emulator.

4
Debugging tools

  • ADB: a debugger with a wealth of features.
  • Use of logs, remote command execution.
  • Back to the Android file system.
  • Access to the various components.
Hands-on work
Use ADB to manage logs and transfer files.

5
Adding a device

  • Adding a device to the Android manufacturing system.
  • Architecture of makefiles and configuration files.
  • Compilation steps.
  • Get to grips with Android, modify system information, build ID, info and boot screens.
Hands-on work
Add a device to Android, modify system information and boot screen.

6
Rootfs and applications

  • Android file system structure.
  • Overview of standard Android services.
  • Supplier structure "service/content".
  • Use of a JNI (Java Native Interface) and a library to access hardware components.
Hands-on work
Customization of the Android file system, implementation of a Java interface and a simple library for accessing a device.

7
Android applications and packages

  • Android application packaging, apk.
  • Access to services from applications.
  • Application life cycle.
Hands-on work
Package an application that accesses a device via the previous JNI interface.