Understanding the Building Blocks of Android

Wednesday, May 17th, 2017


In this post, we are discussing the four fundamental building blocks from which all the Android applications builds. These building blocks are implemented as Java classes.

Android Component

Pictured above is a diagrammatic representation of Android application fundamental which explores Android components and other fundamentals by Romain Chiappinelli.

There are four major building blocks of Android, let’s understand them.


Anything that is visible to the user has an activity. So, an activity is the primary class, defined to present the graphical user interface to the user and capture user’s interaction through that interface. An activity should support a single focused thing that the user can do. Example: any UI visible in the app.


Unlike activities, services don’t need any user interface and run in the background thread. We basically place long-running operations in services. They provide a way for different processes to request operations and share data. Example: music application, while playing a song, it still plays in the background even though we close the app.

Broadcast Receiver

Broadcast receivers are the fundamental components that listen to and responds to events. It acts as a subscriber that listens to its required Intents and respond to it.

Content Provider

If an application manages data and needs to expose that data to other applications, we use Content Providers. It allows applications to store and share data. If an application needs to access data from another application this can be done through Content Provider of that application. The access might read or write or both operations. Similarly, the content provider provides data to the same containing application as well. Thus, we can say content provider is a database style component that handles inter-process communication between applications. Example: messaging app, explores our contacts through contacts application.

Related Articles

  • Node.js enterprise security gets better

    Node.js enterprise security gets better

    Node.js Interactive North America, npm, Inc. announced new enterprise-grade security features for users of npm and the npm Registry. It added two-factor authentication for publishing packages and read-only authentication tokens. npm is the first software registry to provide two-factor authentication for publishers. The 8.8 million developers and hundreds and thousands of companies who download over […]

    read more
  • Microsoft Edge for Android now available on the Play Store

    Microsoft Edge for Android now available

    Microsoft made Android version of the new Edge browser available on the Play Store. Last week Microsoft had released Edge on iOS and Android for Windows Insider users. Microsoft Edge on iOS and Android is for the users who use it on desktop and want to sync with it. It is similar to Safari and […]

    read more
  • Kotlin overtakes Java among Android developers

    Kotlin overtakes Java among Android developers

    Since Google officially made Kotlin a first-class language for writing Android apps, announced at Google I/O in May 2017, 20 percent of applications were built using Kotlin since the conference which had previously been built with Java. The percentage of Android applications built using Java decreased by 6.1 percent and dropped from 50.7 percent to […]

    read more

Let us build something great together!

Start a project