wisemonkeys logo
FeedNotificationProfileManage Forms
FeedNotificationSearchSign in
wisemonkeys logo

Blogs

Android Application Components and Activity Lifecycle

profile
Fahim
Oct 23, 2017
0 Likes
0 Discussions
447 Reads

Android Components

Main Components of Android Activities -> It provides a GUI(graphical user interface) for android application Activities are used by users to interact with the smartPhones. Services -> It is used to handle the background work with in an android application. Ex: WhatsApp New Message Arrive Notification Broadcast Receivers -> It helps you to communicate from Android Application to the Android hardware via Android OS Ex: Battery Low Warning Content Providers -> Its basically provides you the data from the other application Ex Contacts in WhatsApp

Activities

public class MainActivity extends Activity { 
}

or

public class MainActivity extends AppCompatActivity { 
}

Services

public class MyService extends Service {
}

Broadcast Receivers

A broadcast receiver is implemented as a subclass of BroadcastReceiverclass and each message is broadcaster as an Intent object.
public class MyReceiver  extends  BroadcastReceiver {
   public void onReceive(context,intent){}
}

Content Providers

A content provider is implemented as a subclass of ContentProvider class and must implement a standard set of APIs that enable other applications to perform transactions.
public class MyContentProvider extends  ContentProvider {
   public void onCreate(){}
}

Additional Components in Android

Fragments -> Part of an Activity like an Iframe in HTML Views -> UI elements that are drawn on-screen example text,button,image,etc. Layouts -> View hierarchies that control screen format and appearance of the views. Intents -> An Intent is a messaging object you can use to request an action from another app component.

Activity-lifecycle concepts

The Activity class defines the following call backs i.e. events. You don't need to implement all the callbacks methods. However, it's important that you understand each one and implement those that ensure your app behaves the way users expect. onCreate() -> This is the first method called when the activity is first created. onStart() -> It is method called when the activity becomes visible to the user. onResume() -> This method is called when the user starts interacting with the application. onPause() -> In this state activity does not receive user input and cannot execute any code.  onStop() -> This method is called when the activity is no longer visible. onDestroy() -> This method is called before the activity is destroyed by the system. onRestart() -> This method is called when the activity restarts after stopping it.  Example of Activity Lifecycle
package com.example.helloworld;
import android.os.Bundle;
import android.app.Activity;
import android.util.Log;

public class MainActivity extends Activity {
   String msg = "Android : ";
   
   @Override
   public void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.activity_main);
      Log.d(msg, "The onCreate() event");
   }

   @Override
   protected void onStart() {
      super.onStart();
 Log.d(msg, "The onStart() event"); 
   }

   @Override
   protected void onResume() {
      super.onResume();
 Log.d(msg, "The onResume() event"); 
//the activity has become visible
   }

   @Override
   protected void onPause() {
      super.onPause();
 Log.d(msg, "The onPause() event"); 
//activity is taking focus.
   }

   @Override
   protected void onStop() {
      super.onStop();
      Log.d(msg, "The onStop() event");
//the activity is no longer visible.
   }

   @Override
   public void onDestroy() {
      super.onDestroy();
       // the activity is destroyed.
      Log.d(msg, "The onDestroy() event");

   }
}

setContentView() Method is responsible for displaying the XML Layout in your android app, so always use it in onCreate() Method

setContentView(R.layout.activity_main); it will display Emulator window and you should see following log messages in LogCat window in Android studio −

The output somewhat will look like this in the text because here we are not dealing with the XML  Layout file

com.example.helloworld D/Android :: The onCreate() event

com.example.helloworld D/Android :: The onStart() event

com.example.helloworld D/Android :: The onResume() event


Comments ()


Sign in

Read Next

MEMORY MANAGEMENT REQUIREMENT

Blog banner

Memory Management of Operating System(OS)

Blog banner

Introduction to Solidity Programming for Blockchain Development

Blog banner

Getting into Anime

Blog banner

VIRTUAL MACHINE

Blog banner

Virtual Memory - Explaination, Working, Steps

Blog banner

Health is Wealth

Blog banner

Krishna Rao SAP ID--53003230076

Blog banner

Threads

Blog banner

INDIAN CHEAPEST COSMETICS BRAND

Blog banner

RAID - LEVELS OF RAID

Blog banner

S-Tool : Steganography

Blog banner

Navigation With Indian Constellation(NavIC) by ISRO in Geographic Information Systems

Blog banner

5 People who claimed to have Time Traveled

Blog banner

Virtual Memory

Blog banner

Multiple processor scheduling

Blog banner

Process and Threading

Blog banner

RAID

Blog banner

What is a geographic information system (GIS)?

Blog banner

Security issues in Sensor Networks and gathering admissible evidence in Network Forensics

Blog banner

Operation system

Blog banner

Benefits of Yoga

Blog banner

The Joy of Giving: How Festivals Teach Children Empathy and Gratitude

Blog banner

Challenges and risks in service operations

Blog banner

Service transistion under difficult conditions

Blog banner

Veg/Non-veg/Egg Tiffin Meals That Are Nutritious and Filling

Blog banner

Penetration Testing

Blog banner

Models of Information Security.

Blog banner

Data Visualization – Importance and tools (Tableau, Power BI)

Blog banner

TRELLO

Blog banner

Types of Big Data

Blog banner

The Memory Hierarchy

Blog banner

Segmentation and paging concept

Blog banner

Internet of Things

Blog banner

Improving the Accuracy of GPS and GNSS

Blog banner

How Schools Can Reduce Exam Stress in Students?

Blog banner

How Cyber Forensics help prevent Crimes

Blog banner

All you need to know about Website Traffic

Blog banner

RACI model in IT services

Blog banner

Loneliness

Blog banner

Impacts of Data Breach On Companies Challenges and Prevention

Blog banner

Navigating the Digital Battlefield: Security Breaches and Effective Countermeasures

Blog banner