Course Outline
Introduction
Preparing the Development Environment
- Eclipse and Android SDK
- System programming and the C/C++ programming language
- Organizing source code repositories
Overview of Linux Platform Architecture
- Understanding the Android file structure
- How code is organized in Android
- How system services (applications) talk to hardware
Linux Kernel
- Understanding the Android device driver framework
- Interfacing hardware (Sensors, Camera, Audio) to Android HAL
- Compiling the Kernel
Android HAL
- Understanding HAL (Hardware Abstraction Layer)
- Interfacing HAL to system services (applications)
System Programming
- Understanding the Android build system
- Building and debugging an Android system
- Debugging the boot up process
Android for Embedded Platforms
- Overview of virtual hardware (translators, bridges, simulators, emulators, and virtual machines)
- Customizing the Android Emulator
- Customizing Android for ARM-based systems
Android Networking
- Enabling Wi-Fi
Adding New Hardware
- Integrating hardware devices
- Enabling graphics
Deploying Android
- Creating OTA packages
Troubleshooting
- Android recovery
Summary and Conclusion
Requirements
- C/C++ programming experience.
- Java programming experience.
- Knowledge of hardware and software concepts.
Audience
- Linux system developers
- Android system programmers
- Developers who want to get into Android system programming
Testimonials
Practice-based activities.
Łukasz Kołodziejczak
tests, threads, services, support tools
Grzegorz Wodyński
exercises presentation of examples
Łukasz Jaworski
A large number of examples and a wide range of knowledge of the teacher
Piotr Pabiasz
Antonio gave is much background information, best practices and showed us useful tools to speed up our development process.
Philipp Hunger
I really enjoyed the fairly broad coverage of topics.
john harrigan
Learning about the overall ease of using Android Studios to build android apps.
Joshua Anderson
Very comprehensive of a general overview. Exactly what I was after.
Matt Shelton
All of it was excellent and well taught. Very interesting.
Daniel Welch
It was very interesting and I gained a lot of valuable knowledge.
Shaun Lawlor
The trainer's passion and extensive commercial experience thanks to which he is perfectly listened to.
- Weegree Sp. z o.o. Sp.k.
Exercises were fun and it was good to see how quickly an application can be developed in Android Studio.
- Sepura
Detail level and number of labs
- FedEx
I like the teaching style very friendly and informative on the subject.
- FedEx
breaking down the multiple services, actions, devices, etc into the component parts.
Delaine Stoutenburgh - FedEx
The detail given about each topic was really nice, he made sure we understood each topic before moving to the next.
Richie Wood - FedEx
Training materials, Exercise's & Trainer
- FedEx
Knowledge of trainer
- FedEx
The lecture book and lab
- FedEx
Lectures (David is very knowledgeable on Android)
Johnny Miller - FedEx
Instructor's great knowledge about the material.
- FedEx
Clear and repeated emphasis on important aspects of Android development
- FedEx
The set of lab material seems really good. It's a great resource to keep after the training.
- FedEx
Documentation-based translation
- Akademia Górniczo-Hutnicza im. Stanisława Staszica w Krakowie
I really appreciated the instructor's openness to questions and the thorough, justified answers provided. He was clearly keenly interested in the subject and as a result the course was much more enjoyable.