Chapter 2. Application Building Blocks
This chapter focuses on the building blocks of an Android application, namely, the application components and the inter-component communication. There are four types of components in the Android system: Activities, Services, Broadcast Receivers, and Content Providers. Each component is specially designed to accomplish a specific task. A collection of these components makes an Android application. These components talk to each other using Intents which is Android's mechanism for inter-process communication.
There are several books that discuss how to build Android components and Intents. In fact, the Android developer website does a pretty good job introducing programming using these components as well. So in this chapter, instead of covering the implementation details, our objective is to discuss the security aspects of each component and how to define and use component and Intents securely in an application to protect our reputation as a developer and the privacy of our consumers.
Components and Intents are the focus of this chapter. For each Android component, we will cover component declaration, permissions associated with the component, and other security considerations specific to that particular component. We will discuss different types of Intents and the best Intent to use in a particular context.