Android Internals by 8ManTech

Android Internals by 8ManTech

Sign up for the Android Internals Live Training

2 weeks live training on the Android OS

Are you looking to go beyond the standard Android SDK?

Are you interested in exploring system architecture services?

Are you porting Android to entirely new boards?

Are you a security engineers interested in learning about SE Linux in Android?

Learn how to build and customize the Android Operating System source code (AOSP)

Want to learn more?

Many developers struggle with understanding and customizing the Android Open Source Project (AOSP)

Good news, we can help you!

What's Included in the Training

  • - Understanding AOSP
  • - Building AOSP
  • - Customizing AOSP
  • - Troubleshooting common issues
    - Understanding Android Security
  • - Best practices for AOSP development

This training is suitable for both beginners to advanced developers.

Summary

  • The training includes 36 hours of live online instruction on the Android OS.
  • Participants will learn to create a complete pipeline from the Linux Kernel interface to the app level.
  • This course is designed for a small, intimate group and is limited to 20 students.

Audience

  • Developers looking to go beyond the standard Android SDK.
  • Individuals interested in exploring system architecture services.
  • AOSP engineers involved in porting Android to entirely new boards.
  • Security engineers interested in learning about SE Linux.

Author & trainer

Course format

  • September 11-21, 2023
  • 9 live-online sessions with me
  • 4 hours each session
  • A total of 36 hours
  • 50% labs, 50% discussion and lecture
  • 9th session on September 21 is an open office hours

Topics

  • Cuttlefish, Android Emulator and a physical device
  • Building Android Auto, Android Phone, Android TV
  • developer.android.com & source.android.com
  • The device folder
  • The hmm command
  • The Discretionary Access Control (DAC) security in Linux
  • The Mandatory Access Control (MAC) - SELinux
  • Process Status (ps) and Private Application Files in /data/data
  • The Soong Build System
  • Generic System Image (GSI)
  • Android Dynamic Partitions - super.img
  • A/B System Updated and fastbootd
  • The Android Linux Kernel
  • The Generic Kernel Image (GKI)
  • binder, vndbinder, hwbinder kernel drivers
  • Understanding HIDL Android Modules
  • Understanding AIDL for HAL Android Modules
  • Vendor Interface Object (VINTF)
  • Booting Android - the init process and .rc files
  • Java Native Interface (JNI)
  • Vendor Java SDK Library
  • Dalvik, ART, JIT and AOT
  • Signature, normal and dangerous permissions
  • Platform certificates and signing
  • Activity Lifecycle and intents
  • SELinux public policy, macros, avc denials and audit2allow
  • The Shared System Image (SSI)
  • Android Pony EXpress Files - APEX

The main lab

  • Creating a custom vendor service by implementing a 3-way data pipeline from a persistent platform service down to a kernel driver, specifically the CPU Scaling Governor.
  • Resolving AVC denied errors by gaining a comprehensive understanding of the Android 12 architecture.

Loading Portfolios...