In this chapter, we introduce the reader to Android architecture. We cover various layers in the Android software stack, from the Linux kernel to applications, as well as the extent to which they have security implications. We then walk the reader through the Android start-up process and setup of the Android environment, and we present the various tools available to us through the Android Software Development Kit (SDK). We also provide hands-on instruction for downloading and installing the Android SDK and interacting with shell commands.
2.1 Android Architecture Overview
Android can be thought of as a software stack comprising different layers, each layer manifesting well-defined behavior and providing specific ...