Application components in Android


Application components in Android

Application components are the vital parts of an Android application. All components are associated with the manifest file Android Manifest.xml that defines each component of the application and way of interact.

There are following four main components that can be used within an Android application -

1. Activities: They dictate the UI and handle the user interaction to the smartphone screen.

2. Services: They handle background processing associated with an application

3. Broadcast Receivers: They handle communication between Android OS and applications.

4. Content Providers: They handle data and database management issues,

1. Activities

An activity represents a single screen with a user interface, in short, activity performs actions on the screen. For example, an email application might have one activity that shows a list of new emails, another activity to compose an email, and another activity for reading emails. If an application has more than one activity, then one of them should be marked as the activity that is presented when the application is launched

An activity is implemented as a subclass of Activity class as follows -

public class MainActivity extends Activity {}

2. Services

A service is a component that runs in the background to perform long-running operations. For example, a service might play music in the background while the user is in a different application, or it might fetch data over the network without blocking user interaction with an activity

A service is implemented as a subclass of Service class as follows -

public class MyService extends Service { }

3. Broadcast Receivers

Broadcast receivers simply respond to broadcast messages from other applications or from the system For example, applications can also initiate broadcasts to let other applications know that some data has been downloaded to the device and available for them to use, so this is a broadcast receiver who will intercept this communication and will initiate appropriate action.

A broadcast receiver is implemented as a subclass of BroadcastReceiver class and each message is broadcaster as an Intent object

public class MyReceiver extends BroadcastReceiver { 

public void on Receive context.intent){ }


4. Content Providers

A content provider component supplies data from one application to others on request. Such requests are handled by the methods of the Content Resolver class The data may be stored in the file system, the database, or somewhere else entirely.

A content provider is implemented as a subclass of Content Provider class and must implement a standard set of APIs that enable other applications to perform transactions

public class MyContentProvider extends 

ContentProvider {

    public void onCreate() {}


There are some additional components are as follow:

  1. Fragments: Represents a portion of the user interface in an Activity
  2. Views: Ul elements that are drawn on-screen including buttons, lists forms, etc.
  3. Layouts: View hierarchies that control screen format and appearance of the views.
  4. Intents: Messages wiring components together.
  5. Resources: External elements, such as strings. constants and drawable pictures.
  6. Manifest: Configuration file for the application.