Android Porting training course

Learn To Port Android to Embedded Devices - Maximise Existing Hardware Capabilities

Next 17 August (Remote)
3 days £2500 + VAT

JBI training course London UK

  • Gain an Introduction to Android and setup
  • Learn how the Android build system works
  • Understand Kernel and Booting
  • Explore Hardware libraries
  • Learn To Port Android to Embedded Devices
  • Maximise Existing Hardware Capabilities
  • Display and OpenGL ES libraries
  • Learn about Input devices
  • Utilise Audio devices and Video devices 
  • Learn Network and Bluetooth devices
  • Understand Power management 


Our Android porting training course shows how to port Android to a typical embedded hardware platform. It is intended for engineers who are starting out with a fresh Android implementation or who need to understand and modify an existing one. During the hands-on sessions attendees use the source code from the Android OpenSource Project (AOSP) and go through the steps of implementing Android on a common development board with an ARM Cortex A series processor.  Emphasis is on understanding how the Android build system works and which components need to be modified to suit particular hardware.

JBI training course London UK
JBI training course London UK

Software engineers and system architects


Related Courses

Introduction and setup

• Introduction to Android; review of open source licenses: GPL/LGPL, Apache, etc.
• Selecting a toolchain
• Getting and building the AOSP (repo, lunch, make)
• Begin creating a new board definition which will be used through the rest of the course



• Review of the Android kernel additions
• Merging the Android patches with an existing kernel BSP
• Kernel configuration options
• Adding the kernel to the board definition



• Overview of Android boot
• Selecting a bootloader and flash memory partition scheme
• Creating main and recovery boot images
• Customising the init.rc boot script and system properties


Hardware libraries

• Overview of the Android HAL (Hardware Abstraction Layer)
• Lights, sensors


Display and OpenGL ES libraries

• Configuring frame buffer driver, LCD and HDMI interfaces
• 3D graphics support: libEGL, GL ES 1.1/2.0


Input devices

• The input layer: touch screens, mice, keyboards and keypads
• Input device configuration files: /system/usr/idc.
• Keyboard and button devices. gpio-buttons
• Single and multi touch. The multi-touch protocol input event protocol


Audio devices

• The audio HAL: libaudio
• Configuring ALSA sound drivers


Video devices

• Video sources: camera devices and other inputs
• The Video 4 Linux framework


Network and Bluetooth devices

• Overview of integrating network devices into Android
• Wifi devices
• Wired Ethernet devices
• Bluetooth devices


Power management

• Power states and transitions
• Using wake locks to prevent the system going into sleep mode
• Operating on mains vs battery; managing battery charge and discharge cycles


Course Updates & Newsletter

Receive the latest version of this course by email & subscribe to our Newsletter

0800 028 6400



Corporate Policies     Terms & Conditions
JB International Training Ltd  -  Company number 08458005

Registered address 1345 High Road, London, N20 9HR