ABSTRACT

This chapter introduces the reader to Android architecture and describes various layers in the Android software stack, from the Linux kernel to applications, as well as the extent to which they have security implications. It examines the reader through the Android start-up process and setup of the Android environment, and presents the various tools available through the Android Software Development Kit (SDK). The chapter provides hands-on instruction for downloading and installing the Android SDK and interacting with shell commands. The SDK includes the Android libraries, tools, and sample applications to get us started. The SDK is available for free from the Android website. Android can be thought of as a software stack comprising different layers, each layer manifesting well-defined behavior and providing specific services to the layer it. Android uses the Linux kernel, which is at the bottom of the stack. Above the Linux kernel are native libraries and Android runtime.