• Like
Android activity intentsq
Upcoming SlideShare
Loading in...5
×

Android activity intentsq

  • 173 views
Uploaded on

 

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
173
On Slideshare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
3
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Welcome Every Day is a new Beginning
  • 2. Major Application components Any Android application must have at least one amongst the following components: • Activity • Intent & Intent Filters • Broadcast Receivers • Services • Content Providers
  • 3. Activity •Activity is an application component which provides User Interface(UI) to any application •An application can have any number of activities but only one of them can have the focus at any given time of the application’s visible lifetime •All other activities are moved to a “back-stack” which uses First In First Out (FIFO) mechanism to handle those activities •All activities have a set of methods known as “Callback methods”, which will get triggered during different stages of an Activity lifecycle •Views control rectangular space within an activity & interacts with the user •Widgets = Views + Visual elements + business logic •Layouts are special type of Views, which are derived from ViewGroup group
  • 4. Activity Lifecycle
  • 5. Activity – Callback methods • onCreate() – triggered when the Activity is created • onStart() – triggered when the Activity is started • onResume() – triggered when the Activity is resumed after pause • onPause() – triggered when the Activity is paused • onStop() – triggered when the Activity goes out to background stack • onDestroy() – triggered when the Activity is destroyed
  • 6. States of an Activity An activity can be in anyone of the states in its entire lifecycle: • Resumed – Activity is in running • Paused – Activity is paused & visible in the background • Stopped – Activity is paused & not visible in the background ( in backstack)
  • 7. Start & Stop an Activity • An activity can be started in two ways : • • Using startActivity(Intent intent) method Using startActivityForResult(int reqCode,int resCode, Intent data) method • The first method is used to start an activity normally • The second method is used to start an activity when a specific resultant action is expected. Eg. Choose a phone contact from Contacts application • If an activity is started using second method, the control will be passed to this method after the expected result – onActivityResult() • An activity can be stopped/killed in ways: • • Using finishActivity() method (Recommended) Using finish() method
  • 8. How to start an Activity • An activity can be started from another activity using another application component called Intent. • A java class with name Sample.java, which extends Activity class must be created. • An entry in AndroidManifest.xml file should be included • A layout XML file must be created and proper layout should be created in XML file • Code snipped to start an activity (using its name): Intent intent = new Intent(this, Sample.class); startActivity(intent);
  • 9. How to start an Activity • An activity can also be started without explicitly stating its name but the action that it can perform Steps: • A java class with name Sample.java, which extends Activity class must be created. • An entry in AndroidManifest.xml file is included & an action is defined in Intent_Filter tag • A layout XML file is created and proper layout is created in XML file • Code snipped to start an activity (using its name): Intent intent = new Intent(Intent.ACTION_SEND); intent.putExtra(Intent.EXTRA_EMAIL, recipientArray); startActivity(intent);
  • 10. Intents • Application components are activated through messages called Intents • Intents provide a facility for late runtime binding between components of same application or different applications as well • Basically, it is a passive data structure, which holds an abstract definition of an action performed or to be taken • It is used to start Activities using “startActivity(intent)” method • It is also used to start or bind Services using “startService(intent)” and “bindService(intent)” methods • It is also used to send broadcasts using “sendStickyBroadcast(intent)” methods
  • 11. Intent Objects Every Intent contains at least one of the following objects: 1. Component Name [optional] – Component with Intent is associated 2. Action (mandatory) 3. Category (mandatory at least once) – Category of Action 4. Data [optional & depends on type of Action] – URI & MIME type of data needed to complete Action 5. Extras [optional] – Data needed to complete Action 6. Flags [optional] – Eg. Which task the activity should belong to ?
  • 12. Intent Types Intents can be classified into following two types: • Explicit Intents – Associated component name is explicitly mentioned Intent intent1 = new Intent(this,ActivityTwo.class); startActivity(intent); • Implicit Intents – Associated component name is implied (not mentioned) Intent intent = new Intent(Intent.ACTION_SEND); intent.putExtra(Intent.EXTRA_EMAIL, recipientArray); startActivity(intent);
  • 13. Intent Types & Resolution Intent Resolution : • Intents are resolved after undergoing three tests by Intent Filter • Intent Filter filters the suitable components based on the expected action and other input data 1. 2. 3. Intent Filter performs the tests in the following order and finally resolves the component(s) associated with the Intent Action Test Data Test Category Test • Those components which pass the Action Test will be subjected to Data Test & those which pass the Action Test will be subjected to Category Test
  • 14. Thank You Facebook.com/PerpetroTech Office Address New No 30/1 Velachery Road, Little Mount Saidapet, Chennai-15 Website: www.perpetrotech.com Mail: info@perpetrotech.com Ph: +91- 8939707287