Visual Embedded Android (AOSP) with Drawings and Practice

Explore Android Open Source Project and design powerful systems using Android 11

4.68 (49 reviews)
Mobile Apps
Visual Embedded Android (AOSP) with Drawings and Practice
7 hours
Jul 2023
last update
regular price

What you will learn

Understand embedded system essentials and purpose

Understand high level operating systems (Linux, Android) and purpose of using one

Understand Linux software stack essentials

Understand Android software stack essentials

Customize Android Open Source Project

Work with Android 11 source

Run Android 11 on ASUS Tinkerboard 2

Create custom Android builds for ASUS Tinkerboard 2

Create Android native services

Port native binaries to Android build system

Get around with Android build system (Soong, Makefile)

Use Android Debugging Bridge (ADB) confidently for talking with embedded devices

Use Fastboot confidently for flashing images

Create and work with SELinux policies

Work with AOSP directories confidently

Understand and work with partitions in Android

Port custom Android applications to AOSP

Run Google Compatibility Test Suite (CTS)

Design Android Software compatible with CTS

Get and set system features by manipulating Android system properties

Define and integrate AIDL interfaces

Understand Linux and Android boot process and their differences


My name is Mustafa Ozcelikors, a Linux & Android Engineer with more than +7 years of experience working in automotive, who have won Google SOC event in 2017. Here comes a unique beginner to intermediate course that is dedicated to teach Android Open Source Project and Embedded Android concepts to a larger audience.

Visual Embedded Android Training is a unique course in the way that I use slideshows, pen and canvas for theoretical subjects, whereas makes hands-on examples for the practical subjects. I have mastered this technique over the years, teaching my colleagues at work, teaching on Youtube, and now I have decided to move on to Udemy to reach larger audience.

Theoretical subjects are carefully planned and almost for every important subject, multiple block diagrams have been created for better understanding. Almost every figure, schematic, drawing comes from years of experience in the field, not from the internet or from any book. In practical subjects we take a deep dive in exploring AOSP directories and open up a terminal to achieve things within it.

At the end of the course we together will have a custom Android with custom launcher and custom theme, with integrated AIDL service and test application.

You are in this now for the following great content:

  • Understand embedded Android and Linux software stacks

  • Get around with Android 11 source code and Soong (Android.bp) build system

  • Use ASUS Tinkerboard 2 and run Android 11 on it , completely from the source.

  • Create AIDL interfaces, native C++ Android services, create test applications

  • Port existing Android Java applications to Soong (Android.bp build system

  • Understand AOSP folder layout, partitions

  • Understand and work with SELinux policies

  • Flash images confidently using fastboot tool

  • Talk to embedded device confidently using adb tool

  • Run CTS tests

  • Log and dump Android system information

Thank you!!

Kindly yours,


Introduction to Embedded Systems

Introduction to Embedded Systems
A Generic View on an Embedded System

Embedded Android Architecture

Android vs Linux
Linux Architecture Basics
Android Architecture
How Linux and Android Boots?

Building Android Source and Flashing Android Image

Obtaining and Building Android Source
Downloading Android 11 source for ASUS Tinkerboard 2
Building Android 11 source for ASUS Tinkerboard 2
Flashing Android 11 image to ASUS Tinkerboard 2

A Tour Through Android Source and Partitions

Android Source Code Directories Explained
Android Filesystem Partitions

Accessing Android Device

Introduction to ASUS Tinkerboard 2 Hardware and Interfacing using Serial
Introduction to ADB and Fastboot
Flashing seperate partitions using Fastboot tool
ADB Remote Screen

Exploring ASUS Tinkerboard 2 directories and sources

Board, build, and device configuration files
Init Scripts (RC files)
Devicetree and Kernel Config Files
Files for Android Framework Customization

Customizing Android Framework

Integrating a Custom Launcher in Android Build System
Creating a New Device Workspace to Contain Our Changes
Integrating a Prebuilt Application (Apk) in Android Build System
Customizing Android Framework to Enable Night Mode
Customizing Android Framework to Modify Default Wallpaper

Working in Android Build System

Android System Properties
Integrating Plain C Applications in Android Build System
Deploying Binaries to Various Partitions using Android Build System
Taking a Partial Build using mm Command

Understanding and Creating Native C++ Service

Introduction to Native Service Creation in Android
Creating Native AIDL Service using C++
Creating Init Script for Our Example Service
Modifying Manifest Files for adding AIDL Interface
Creating Aidl Interface Library using Android Build System
SELinux Configuration for Example Service
Creating Test Application to Talk with Example Service over AIDL Interface

Going Forward

An Example Approach to Fixing System-wide Issues
Testing and Certification in Android
ADB Commands for System-wide Debugging


Visual Embedded Android (AOSP) with Drawings and Practice - Screenshot_01Visual Embedded Android (AOSP) with Drawings and Practice - Screenshot_02Visual Embedded Android (AOSP) with Drawings and Practice - Screenshot_03Visual Embedded Android (AOSP) with Drawings and Practice - Screenshot_04



Visual Embedded Android (AOSP) with Drawings and Practice - Price chart


Visual Embedded Android (AOSP) with Drawings and Practice - Ratings chart

Enrollment distribution

Visual Embedded Android (AOSP) with Drawings and Practice - Distribution chart
udemy ID
course created date
course indexed date
course submited by