Mobile Technology


Android being the most used operating system for consumer world and now entering non-mobile segments. The aim of this course is to enable participant with inside knowledge of Android as an OS, its design principles, customization and adoption of OS on new hardware.

System prerequisites:

Minimum 8 GB RAM, Ubuntu Linux OS, Processor i5 and above recommended

It will be instructor-led online live training.

Duration: 50 Hours


1.       Course Contents

1. What & Why of Android?
                Android Architecture -I
                Licensing

2. Android Source
                Source tree layout
                Getting and Building Android
                Repo, manifest file, source env.
                Build configurations
                Local manifest
                What area is for me?
                Linux Distro Vs Android

3. Android build outputs

4. Android boot flow
                Init.rc, service managers, launchers, Fastboot protocol

5. Adding a new device
                Digging more - “/device”
                Vendor specific configurations
                Other hooks

6. Android development
                Android.mk/Android.bp
                ADB (Android Debug Bridge)
                Android Kernel
                Project Treble - overview and progress updates

7. Android native layers

8. Kernel headers, bionic, init, ueventd, properties

9. Android HALs

10. Android system services and service managers

11. AIDL, JNI, HIDL

12. Android Arch - II
                Input subsystem, Surfaceflinger, bluetooth, camera etc.
                Daemons (healthd, vold, netd, rild etc.)
                Package manager, Dalvik/ART
                Source code walk through

13. Application framework outline

14. Security overview - SELinux,  App security, Kernel Security etc.

15. Pointers: Android boot and memory optimization

16. Hands on:

                Android OS development environment setup
                Android Build
                Adding custom device
                Creating custom/new  “c/c++” module , build and run on Android
                Android debugging Tools
                Logcat, Adb, Custom hacks, dumpsys etc..
                Write and execute “custom system service
                Experiments with command line utilities - am, pm, setprop, getprop
                Get the button input and customize the action
                Getting access to custom Android OS (available like LineageOS) and how to contribute

  • Name
  • E-mail
  • Course
  • Phone number
  • Subject
  • Message