Chapter 2. Internals Primer

As we’ve just seen, Android’s sources are freely available for you to download, modify, and install for any device you choose. In fact, it is fairly trivial to just grab the code, build it, and run it in the Android emulator. To customize the AOSP to your device and its hardware, however, you’ll need to first understand Android’s internals to a certain extent. So you’ll get a high-level view of Android internals in this chapter, and have the opportunity in later chapters to dig into parts of internals in greater detail, including tying said internals to the actual AOSP sources.

Note

As mentioned in the Preface, this book is mainly based on 2.3.x/Gingerbread. That said, Android’s internals had remained fairly stable over its lifetime up to that version of Android, and they’ve changed very little from that version to the current 4.2/Jelly Bean. Still, while the bulk of the internals remains relatively unchanged, critical changes can come unannounced thanks to Android’s closed development process. For instance, in 2.2/Froyo and previous versions, the Status Bar was an integral part of the System Server. In 2.3/Gingerbread, the Status Bar was moved out of the System Server and now runs independently from it.[11]

App Developer’s View

Given that Android’s development API is unlike any other existing API, including anything found in the Linux world, it’s important to spend some time understanding what “Android” looks like from the app developers’ perspective, even ...

Get Embedded Android now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.