Intent:- Intent is a message object that passed between android components such as broadcast receiver, services, activity, content providers etc. Android provide facilities to communicate between components using intent in several ways, there are three important cases.
- Start the Activity
- Start the Services
- Delivered the BroadCast Receiver message
Intent Types:- There are two type of intent in android.
1- Implicit Intent: Implicit intent doesn't specify any components( such as service, activity and any broadcast receiver). In such case, intent provides only information of available components provide by Android system to be invoked.
Example:
String url="www.evontech.com";
Intent intent=new Intent(Intent.ACTION_VIEW,Uri.parse(url));
startActivity(intent);
As you can see, there did not provided any components with intents.
2- Explicit Intent: Explicit Intent specifies the components that is which class to be invoked. We pass one components to fire intent and another components to be invoked.
Explicit intent example to start one activity from another Activity:
Intent i = new Intent(ActivityA.this, ActivityB.class);
startActivity(i);
Explicit intent example to start one activity from another Activity with data:
Intent i = new Intent(ActivityA.this, ActivityB.class);
intent.putExtra("Value","Welcome to ActivityB");
startActivity(i);
How to use Implicit Intent for one application to another application:
Implicit intent specifies an action that invoke by any application which is on device and is able to handle that action. Implicit intent is useful when your app cant perform the action, but there are some other apps on the device which can perform that action and user can pic which app to use.
Example: If you want share some contents with other users, then create an implicit intent with the Action_Send action and add extras specify data. User call start activity then you can pic the app which are applicable to perform this action .
// Create the text message with a string
Intent sendIntent = new Intent();
sendIntent.setAction(Intent.ACTION_SEND);
sendIntent.putExtra(Intent.EXTRA_TEXT, textMessage);
sendIntent.setType("text/plain");
0 Comment(s)