After months of preparation, and after completing our first Android system development training session, we are proud to release our complete training materials under the Creative Commons Attribution – Share Alike 3.0 license.
Our course targets engineers who need to develop embedded systems with Google Android, customizing Android to support specific hardware and product requirements.
Here are the main topics that we cover:
- Introduction to Android
- Android source code and compiling
- Linux kernel, configuration, compiling and booting
- Bootloaders for Android
- Android changes to the Linux kernel
- Supporting new hardware
- Development and debugging with ADB
- Android’s build system
- The Android filesystem
- Android native layer and calling a C program from Android
- Android framework and applications
- Application development
- The apk standard
- System customization
- Advise and resources
See the detailed agenda.
Just like the materials for our Embedded Linux system development and Embedded Linux kernel and driver development courses, this new courseware is meant to be be a useful resource for product developers around the world. It could also be used by engineers with sufficient Android experience to train their colleagues without having to spend months preparing slides and practical labs as we did.
Practical labs are conducted on the Devkit8000 embedded board from Embest, with a TI OMAP3 CPU and an LCD touchscreen. As we use Linaro Android in our labs, it should be relatively easy to make these labs on other development boards with a Linaro supported CPU (TI OMAP, Freescale i.MX53 and i.MX6, ST Ericsson Nova and Samsung Exynos).
LaTeX sources for these materials are available on Bootlin’spublic git server.
To build these documents from source, you may need to install several packages (thanks to Huy, Bui Quang, for contributing the package list):
sudo apt-get install git-core inkscape texlive-latex-base \ texlive-latex-extra texlive-font-utils dia python-pygments \ texlive-fonts-recommended
You can then build the latest version as follows:
git clone git://github.com/bootlin/training-materials.git cd training-materials make full-android-labs.pdf make full-android-slides.pdf
The LaTeX format and the git repository make it easy to identify changes made since the last time you accessed the materials. We even have a training-materials-updates mailing list to receive notifications for updates to all our training materials. Compared to the Open Document Format that we used in the past, this should also make it considerably simpler to translate these documents and keep translations up to date.
As usual, comments, suggestions and translations are welcome. You can write to the feedback address available on our contact page.