Enroll now in an upcoming course

2 Days - $1400

No open enrollment classes scheduled at this time.

Contact Us


Register for our monthly training newsletter to stay informed about upcoming courses and new free content and you'll get a 5% discount off your first course.

They really had the best credibility out there, and they were flexible and tailored the class to what I needed for my developers.

Paul Beer, Optelian

A text icon linking to the trainign quote page

This two-day course will show you how to take the source code released by the Android Open Source Project (AOSP) and customize it to work on a typical embedded development board.

Course Description

Android is an open source operating system based on a Linux kernel. While it is best known for being deployed on a wide range of smart phones and tablets, it is sufficiently flexible to be used in many other areas as well.

In taking this course, you will gain an understanding how the Android build system works and how to add a completely new device definition, how to customize the components that go into the build, how to obtain and build a Linux kernel with Android additions and how to load it onto the new target board and configure the boot process.

A target board for the labs will be provided by The Linux Foundation and students will get to take their own kit home for further practice.

Course Materials

As part of your registration, a printed copy of the course manual will be mailed to you. Expect 3-5 days for US delivery and 7-10 days for international deliveries.

For more details view the Course Outline.


The course is primarily intended for experienced programmers and engineers who are interested in learning the fundamentals of adapting Android to an embedded system, especially those who have been assigned to a team tasked with designing an embedded system. The purpose of the class is to shorten the learning curve by providing a guided tour combining lecture and practical exercises of building and customizing Android.


You should:

  • Be proficient in the C programming language
  • Be familiar with basic Linux (Unix) utilities, such as ls, rm, grep, tar, and have a familiarity with command shells and scripts
  • Know the basics of compiling and linking programs, constructing Makefiles etc.; i.e., be comfortable doing application developing in a Linux or Unix environment
  • Have a good understanding of systems programming in a Unix or Linux environment, at least from the standpoint of writing applications
  • Knowledge of the Java language is beneficial but not strictly required.
If you have a basic understanding of the top-level principles of cross development, where a host system is used to develop and compile software that runs on a different target system, it would be helpful.

Ways To Train

Event Type: Training Course

Classroom Linux Training [?]

  • Delivered in conveniently located training centers
  • Please check schedule for exact location and duration

On-Site Corporate Linux Training [?]

  • All courses can be delivered at your office for private, on-site training
  • Contact us for more information

Custom Corporate Linux Training [?]

  • All courses can be customized for private, on-site training
  • Contact us for more information