Highlights
- Gain an Introduction to Android and setup
- Learn how the Android build system works
- Understand Kernel and Booting
- Explore Hardware libraries
- Learn To Port Android to Embedded Devices
- Maximise Existing Hardware Capabilities
- Display and OpenGL ES libraries
- Learn about Input devices
- Utilise Audio devices and Video devices
- Learn Network and Bluetooth devices
- Understand Power management
Course Details
Introduction and setup
• Introduction to Android; review of open source licenses: GPL/LGPL, Apache, etc.
• Selecting a toolchain
• Getting and building the AOSP (repo, lunch, make)
• Begin creating a new board definition which will be used through the rest of the course
Kernel
• Review of the Android kernel additions
• Merging the Android patches with an existing kernel BSP
• Kernel configuration options
• Adding the kernel to the board definition
Booting
• Overview of Android boot
• Selecting a bootloader and flash memory partition scheme
• Creating main and recovery boot images
• Customising the init.rc boot script and system properties
Hardware libraries
• Overview of the Android HAL (Hardware Abstraction Layer)
• Lights, sensors
Display and OpenGL ES libraries
• Configuring frame buffer driver, LCD and HDMI interfaces
• 3D graphics support: libEGL, GL ES 1.1/2.0
Input devices
• The input layer: touch screens, mice, keyboards and keypads
• Input device configuration files: /system/usr/idc.
• Keyboard and button devices. gpio-buttons
• Single and multi touch. The multi-touch protocol input event protocol
Audio devices
• The audio HAL: libaudio
• Configuring ALSA sound drivers
Video devices
• Video sources: camera devices and other inputs
• The Video 4 Linux framework
Network and Bluetooth devices
• Overview of integrating network devices into Android
• Wifi devices
• Wired Ethernet devices
• Bluetooth devices
Power management
• Power states and transitions
• Using wake locks to prevent the system going into sleep mode
• Operating on mains vs battery; managing battery charge and discharge cycles
Who should attend
Feedback
4.8 out of 5 average
"Our tailored course provided a well rounded introduction and also covered some intermediate level topics that we needed to know. Clive gave us some best practice ideas and tips to take away. Fast paced but the instructor never lost any of the delegates"
Brian Leek, Data Analyst, May 2022
“JBI did a great job of customizing their syllabus to suit our business needs and also bringing our team up to speed on the current best practices. Our teams varied widely in terms of experience and the Instructor handled this particularly well - very impressive”
Brian F, Team Lead, RBS, Data Analysis Course, 20 April 2022