What is Intent? What is the difference between an implicit intent and an explicit intent?

Intent is a messaging object that can be use to pass data between different  components (activities/service/BroadcastReceivers...), in other words Intents are asynchronous messages which allows Android components to request functionality from other components. For example an Activity can send an Intents to the Android system to starts another Activity
 
 In Android we have two types of Intents.

  1. Implicit Intent
  2. Explicit Intent


 Implicit Intent
 Intent which will be used to call system apps like Gmail,Gallery,SMS...

 

Let's check below code 

Intent sendIntent = new Intent();
sendIntent.setAction(Intent.ACTION_SEND);
sendIntent.putExtra(Intent.EXTRA_TEXT, textMessage);
sendIntent.setType("text/plain")
startactivity(sendIntent);

 

Explicit Intent
 Intent which will be used to call our application components (Activities/Services...) which we know the exact name of the activity.

Intent intent = new Intent(first.this, second.class);
startactivity(intent);

 

Related

How to Convert Drawable to Bitmap in Android