Visual Embedded Android (AOSP) with Drawings and Practice
What you'll 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
Requirements
- Basic Linux understanding (commands, bash scripts, code compilation, basic concepts)
- Basic embedded system understanding (basic concepts, cross compilation, system images)
- Basic C and C++ programming understanding (not a must but good to have)
Description
Hi,
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,
Mustafa
Who this course is for:
- Beginners and enthusiasts who understand Linux and want to learn AOSP and Embedded Android
- Hobbyists who want to work with ASUS Tinkerboard 2 and AOSP
- Beginners who would like to develop their car infotainment, or mobile devices based on Android
- Professionals who want a great wrap-up on their favourite subject
Instructor
I am a Senior Embedded Software Engineer focusing on Linux/Android with more than +8 years of experience working in automotive domain, who have won Google SOC event in 2017. I have +18 publications in well respected journals and conferences and have been a contributor to several open-source projects before.
I work on creating embedded products/tech demos by customizing high level operating systems such as Android and Linux, dealing with build systems such as Bitbake and Soong, porting open-source software and creating custom software (Native C/C++, Qt, Java). Although I am mainly a platform/software guy, in my projects I do graphics design, animation design, and PCB design to do the complete product by myself.
For a while now I have been creating videos with drawings, block diagrams and hands-on examples on the topics that I am most comfortable on. Visit my Udemy, Youtube, or personal web page for more details on my work.