SlideShare a Scribd company logo
Android Mobile
Application
Development
Assistant Lecturer
Mustafa Ghanem Saeed
Cihan University - Sulaimaniyah
Lecture Four
Computer science Department
Intents and Filters
Collage Of Science
What are intents?
• Intents are asynchronous messages which allow
application components to request functionality from
other Android components. Intents allow you to
interact with components from the same applications
as well as with components contributed by other
applications.
o For example, an activity can start an external activity for taking a picture.
• Intents are objects of the android.content.Intent type.
• Your code can send them to the Android system defining
the components you are targeting.
o For example, via the startActivity() method you can define that the intent should
be used to start an activity.
2
http://www.vogella.com/tutorials/AndroidIntent/article.html
Android intents are mainly used to:
(Question)
1. Open another Activity or Service from the
current Activity
2. Pass data between Activities and Services
3. Give responsibility to another application. For
example, you can use Intents to open the
browser application to display a URL.
4. Broadcast a message.
5. Dial a phone call etc.
3
http://www.javatpoint.com/android-intent-tutorial
Types of Android Intents
(Question)
1. Implicit Intent
o Implicit Intent specify the action which should be
performed and optionally data which provides
content for the action.
o For example, the following tells the Android system to
view a webpage. All installed web browsers should be
registered to the corresponding intent data via an
intent filter.
4
Types of Android Intents
(Question) cont.
2- Explicit intents explicitly define the component which
should be called by the Android system, by using the Java
class as identifier.
o The following code demonstrates how you can start
another activity via an intent.
5
http://www.vogella.com/tutorials/AndroidIntent/article.html
Types of Android Intents
(Question) cont.
1. use explicit intents to:
1. start a new activity
2. start an activity to get a result
3. start a service
4. broadcast an intent
5. start a new activity from within a broadcast receiver
2. use implicit intents to:
1. use other app’s components to:
1. send an email
2. pick a contact from the contacts list
3. make a phone call
3. use a pending intent to send a notification
6
https://www.101apps.co.za/articles/android-s-intents-and-intent-filters-a-tutorial.html
Intent Filters
 There are following Five elements in an intent filter:
1. Action
o It represent an activities action, what an activity is going to do.
2. Data
o There are two forms in which you can pass the data, using URI(Uniform
Resource Identifiers) or MIME type of data
3. Category
o This attribute of Intent filter dictates the behavior or nature of an Intent
4. Extras
o Key-value pairs for additional information that should be delivered to
the component handling the intent
5. Flags
o These flags are optional part of Intent object and instruct the Android
system how to launch an activity, and how to treat it after it's launched
etc.
7
http://abhiandroid.com/programming/intent-filter
Important Note: Every intent filter must contain action element in it. Data
and category element is optional for it.
Intent Filters-Action 1
 The Intent class defines a number of action constants,
including these:
8
http://www.linuxtopia.org/online_books/android/devguide/guide/topics/intents/intents-filters.html
Constant Target
component
Action
ACTION_CALL activity Initiate a phone call.
ACTION_EDIT activity Display data for the user to edit.
ACTION_MAIN activity Start up as the initial activity of a task, with no
data input and no returned output.
ACTION_SYNC activity Synchronize data on a server with data on the
mobile device.
Intent Filters-Action 2
 The Intent class defines a number of action constants,
including these:
9
http://www.linuxtopia.org/online_books/android/devguide/guide/topics/intents/intents-filters.html
Constant Target component Action
ACTION_BATTERY_LOW Broadcast Receiver A warning that the battery is
low.
ACTION_HEADSET_PLUG Broadcast Receiver A headset has been plugged
into the device, or unplugged
from it.
ACTION_SCREEN_ON Broadcast Receiver The screen has been turned
on.
ACTION_TIMEZONE_CHA
NGED
Broadcast Receiver The setting for the time zone
has changed.
Intent Filters- Data
 The URI of the data to be acted on and the MIME type of that data.
Different actions are paired with different kinds of data specifications.
• The URI: At the highest level a URI reference (Uniform
Resource Identifiers) in string form has the syntax
o [scheme:]scheme-specific-part[#fragment]
o For example:
• Short for Multipurpose Internet Mail Extensions, a
specification for formatting non-ASCII messages so that they
can be sent over the Internet. For Examples:
o For Text "text/plain"
o For Image :"image/jpeg“ , "image/bmp“ ,"image/gif“ , "image/jpg“ ,"image/png"
o For Video: "video/wav“, "video/mp4"
10
http://www.linuxtopia.org/online_books/android/devguide/guide/topics/intents/intents-filters.html
mailto:java-net@java.sun.com
news:comp.lang.java
Intent Filters- Data 2
Sr.No. Action/Data Pair & Description
1
ACTION_VIEW content://contacts/people/1
Display information about the person whose identifier is "1".
2
ACTION_DIAL content://contacts/people/1
Display the phone dialer with the person filled in.
3
ACTION_VIEW tel:123
Display the phone dialer with the given number filled in.
4
ACTION_DIAL tel:123
Display the phone dialer with the given number filled in.
5
ACTION_EDIT content://contacts/people/1
Edit information about the person whose identifier is "1".
11
<intent-filter . . . >
<data android:type="video/mpeg" android:scheme="http" . . . />
<data android:type="audio/mpeg" android:scheme="http" . . . />
. . .
</intent-filter>
Some examples of Action/Data Pair
Intent Filters- Category
 The Intent class defines several category constants,
including these (More than 29 category):
12
https://www.tutorialspoint.com/android/android_intent_standard_categories.htm
Constant Meaning
CATEGORY_BROWSABLE
The target activity can be safely invoked by the browser to
display data referenced by a link — for example, an image or an
e-mail message.
CATEGORY_DEFAULT
Set if the activity should be an option for the default action
(center press) to perform on a piece of data.
CATEGORY_APP_MAPS Used with ACTION_MAIN to launch the maps application.
CATEGORY_LAUNCHER
an activity on the top of stack, whenever application will start,
the activity containing this category will be opened first..
Intent Filters- Extras
13
https://www.tutorialspoint.com/android/android_intent_standard_extra_data.htm
• This will be in KEY-VALUE PAIRS for additional
information that should be delivered to the component
handling the intent. The extras can be set and read using
the putExtras() and getExtras() methods respectively
(More than 26 Extras):
• For examples :
• EXTRA_EMAIL: A String[] holding e-mail addresses that
should be delivered to.
• EXTRA_HTML_TEXT: A constant String that is
associated with the Intent, used with ACTION_SEND to
supply an alternative to EXTRA_TEXT as HTML formatted
text.
Intent i=new Intent(context,SendMessage.class);
i.putExtra("id", user.getUserAccountId()+"");
i.putExtra("name", user.getUserFullName());
context.startActivity(i);
Intent Filters- Flags 1
 Flags defined in the Intent class that function as
metadata for the intent. The flags may instruct the
Android system how to launch an activity and how to
treat it after it’s launched. (More than 33 Flags):
 FLAG_ACTIVITY_CLEAR_TASK - Clear any existing tasks on
this stack before starting the activity.
 FLAG_ACTIVITY_NEW_TASK - Start the activity in a new task
or reuse an existing task tied to that activity.
14
https://inthecheesefactory.com/blog/understand-android-activity-launchmode/en
Intent i=new Intent(this, Sample.class);
i.setFlags(Intent. FLAG_ACTIVITY_NEW_TASK);
startActivity(i);
Intent Filters- Flags 2
 How FLAG_ACTIVITY_NEW_TASK work:
 With normal intent StartActivity
 With FLAG_ACTIVITY_NEW_TASK:
15
https://inthecheesefactory.com/blog/understand-android-activity-launchmode/en
Important Questions?
 Define Android intents? Ans : Slide 2
 Mention mainly used of Android intents ? Ans : Slide 3
 Explain the Types of Android Intents? Ans : Slide 4,5
 Give Three examples of using Android Intents as : Ans : Slide 6
a) Use explicit intents?
b) Use implicit intent?
 What are the elements of intent filter list them with short definition ? Ans : Slide 7
 Give Three intent Action filter name and goal when apply on:
a) Activity? Ans : Slide 8
b) Broadcast Receiver? Ans : Slide 9
 Define Data intent filter and Explain (URL or MIME ) with example? Ans : Slide 7,10
 What is Category intent filter end explain only Two type of it? Ans : Slide 7,12
 Explain Extras intent filter and write sample java code to implement it ? Ans : Slide 7, 13
 Explain Flags intent filter and write sample java code to implement it ? Ans : Slide 7,14
16
Slide
17
Questions? Discussion?

More Related Content

DOCX
Using intents in android
PPTX
Data Transfer between activities and Database
DOCX
Android intents in android application-chapter7
DOCX
Android Application Components with Implementation & Examples
PPTX
Activity & Shared Preference
PDF
android_mod_3.useful for bca students for their last sem
PDF
Mobile Application Development -Lecture 09 & 10.pdf
PDF
Intents are Awesome
Using intents in android
Data Transfer between activities and Database
Android intents in android application-chapter7
Android Application Components with Implementation & Examples
Activity & Shared Preference
android_mod_3.useful for bca students for their last sem
Mobile Application Development -Lecture 09 & 10.pdf
Intents are Awesome

Similar to ANDROID (20)

ODP
Ppt 2 android_basics
PPTX
Intents in Mobile Application Development.pptx
PPT
Intent, Service and BroadcastReciver (2).ppt
PPT
Level 1 &amp; 2
PPTX
learn about Android Extended Intents.pptx
PPT
Android Bootcamp Tanzania:intents
PPTX
MAD Unit 5.pptxxxxxxxxxxxxxxxxxxxxxxxxxx
PPTX
Android development session 2 - intent and activity
PPTX
MAD unit 5.pptxyfc8yct7xugxigc8yc8c7yc7gc8yc
PDF
Android App Development 07 : Intent &amp; Share
PPTX
Unit - III.pptx
PPTX
Data Transfer between Activities & Databases
ODP
Android App Development - 02 Activity and intent
PDF
SWE218_lesson9.pdfjjjjjjjjjjjjjjjjjjkjkkk
PPTX
Android Insights - 1 [Intents]
PPTX
unit3.pptx
PPTX
Hello android world
PDF
Android development Training Programme Day 2
DOCX
Android building blocks and application life cycle-chapter3
PPTX
08.1. Android How to Use Intent (explicit)
Ppt 2 android_basics
Intents in Mobile Application Development.pptx
Intent, Service and BroadcastReciver (2).ppt
Level 1 &amp; 2
learn about Android Extended Intents.pptx
Android Bootcamp Tanzania:intents
MAD Unit 5.pptxxxxxxxxxxxxxxxxxxxxxxxxxx
Android development session 2 - intent and activity
MAD unit 5.pptxyfc8yct7xugxigc8yc8c7yc7gc8yc
Android App Development 07 : Intent &amp; Share
Unit - III.pptx
Data Transfer between Activities & Databases
Android App Development - 02 Activity and intent
SWE218_lesson9.pdfjjjjjjjjjjjjjjjjjjkjkkk
Android Insights - 1 [Intents]
unit3.pptx
Hello android world
Android development Training Programme Day 2
Android building blocks and application life cycle-chapter3
08.1. Android How to Use Intent (explicit)
Ad

Recently uploaded (20)

PDF
[EN] Industrial Machine Downtime Prediction
PDF
Microsoft 365 products and services descrption
PPTX
(Ali Hamza) Roll No: (F24-BSCS-1103).pptx
PPTX
Copy of 16 Timeline & Flowchart Templates – HubSpot.pptx
PDF
Microsoft Core Cloud Services powerpoint
PDF
Jean-Georges Perrin - Spark in Action, Second Edition (2020, Manning Publicat...
PPTX
Market Analysis -202507- Wind-Solar+Hybrid+Street+Lights+for+the+North+Amer...
PPTX
IBA_Chapter_11_Slides_Final_Accessible.pptx
PDF
Systems Analysis and Design, 12th Edition by Scott Tilley Test Bank.pdf
PPTX
CYBER SECURITY the Next Warefare Tactics
PPTX
Business_Capability_Map_Collection__pptx
PDF
annual-report-2024-2025 original latest.
PPT
DU, AIS, Big Data and Data Analytics.ppt
PPTX
A Complete Guide to Streamlining Business Processes
PDF
REAL ILLUMINATI AGENT IN KAMPALA UGANDA CALL ON+256765750853/0705037305
PPTX
modul_python (1).pptx for professional and student
PDF
Introduction to the R Programming Language
PDF
OneRead_20250728_1808.pdfhdhddhshahwhwwjjaaja
PDF
Tetra Pak Index 2023 - The future of health and nutrition - Full report.pdf
PPTX
New ISO 27001_2022 standard and the changes
[EN] Industrial Machine Downtime Prediction
Microsoft 365 products and services descrption
(Ali Hamza) Roll No: (F24-BSCS-1103).pptx
Copy of 16 Timeline & Flowchart Templates – HubSpot.pptx
Microsoft Core Cloud Services powerpoint
Jean-Georges Perrin - Spark in Action, Second Edition (2020, Manning Publicat...
Market Analysis -202507- Wind-Solar+Hybrid+Street+Lights+for+the+North+Amer...
IBA_Chapter_11_Slides_Final_Accessible.pptx
Systems Analysis and Design, 12th Edition by Scott Tilley Test Bank.pdf
CYBER SECURITY the Next Warefare Tactics
Business_Capability_Map_Collection__pptx
annual-report-2024-2025 original latest.
DU, AIS, Big Data and Data Analytics.ppt
A Complete Guide to Streamlining Business Processes
REAL ILLUMINATI AGENT IN KAMPALA UGANDA CALL ON+256765750853/0705037305
modul_python (1).pptx for professional and student
Introduction to the R Programming Language
OneRead_20250728_1808.pdfhdhddhshahwhwwjjaaja
Tetra Pak Index 2023 - The future of health and nutrition - Full report.pdf
New ISO 27001_2022 standard and the changes
Ad

ANDROID

  • 1. Android Mobile Application Development Assistant Lecturer Mustafa Ghanem Saeed Cihan University - Sulaimaniyah Lecture Four Computer science Department Intents and Filters Collage Of Science
  • 2. What are intents? • Intents are asynchronous messages which allow application components to request functionality from other Android components. Intents allow you to interact with components from the same applications as well as with components contributed by other applications. o For example, an activity can start an external activity for taking a picture. • Intents are objects of the android.content.Intent type. • Your code can send them to the Android system defining the components you are targeting. o For example, via the startActivity() method you can define that the intent should be used to start an activity. 2 http://www.vogella.com/tutorials/AndroidIntent/article.html
  • 3. Android intents are mainly used to: (Question) 1. Open another Activity or Service from the current Activity 2. Pass data between Activities and Services 3. Give responsibility to another application. For example, you can use Intents to open the browser application to display a URL. 4. Broadcast a message. 5. Dial a phone call etc. 3 http://www.javatpoint.com/android-intent-tutorial
  • 4. Types of Android Intents (Question) 1. Implicit Intent o Implicit Intent specify the action which should be performed and optionally data which provides content for the action. o For example, the following tells the Android system to view a webpage. All installed web browsers should be registered to the corresponding intent data via an intent filter. 4
  • 5. Types of Android Intents (Question) cont. 2- Explicit intents explicitly define the component which should be called by the Android system, by using the Java class as identifier. o The following code demonstrates how you can start another activity via an intent. 5 http://www.vogella.com/tutorials/AndroidIntent/article.html
  • 6. Types of Android Intents (Question) cont. 1. use explicit intents to: 1. start a new activity 2. start an activity to get a result 3. start a service 4. broadcast an intent 5. start a new activity from within a broadcast receiver 2. use implicit intents to: 1. use other app’s components to: 1. send an email 2. pick a contact from the contacts list 3. make a phone call 3. use a pending intent to send a notification 6 https://www.101apps.co.za/articles/android-s-intents-and-intent-filters-a-tutorial.html
  • 7. Intent Filters  There are following Five elements in an intent filter: 1. Action o It represent an activities action, what an activity is going to do. 2. Data o There are two forms in which you can pass the data, using URI(Uniform Resource Identifiers) or MIME type of data 3. Category o This attribute of Intent filter dictates the behavior or nature of an Intent 4. Extras o Key-value pairs for additional information that should be delivered to the component handling the intent 5. Flags o These flags are optional part of Intent object and instruct the Android system how to launch an activity, and how to treat it after it's launched etc. 7 http://abhiandroid.com/programming/intent-filter Important Note: Every intent filter must contain action element in it. Data and category element is optional for it.
  • 8. Intent Filters-Action 1  The Intent class defines a number of action constants, including these: 8 http://www.linuxtopia.org/online_books/android/devguide/guide/topics/intents/intents-filters.html Constant Target component Action ACTION_CALL activity Initiate a phone call. ACTION_EDIT activity Display data for the user to edit. ACTION_MAIN activity Start up as the initial activity of a task, with no data input and no returned output. ACTION_SYNC activity Synchronize data on a server with data on the mobile device.
  • 9. Intent Filters-Action 2  The Intent class defines a number of action constants, including these: 9 http://www.linuxtopia.org/online_books/android/devguide/guide/topics/intents/intents-filters.html Constant Target component Action ACTION_BATTERY_LOW Broadcast Receiver A warning that the battery is low. ACTION_HEADSET_PLUG Broadcast Receiver A headset has been plugged into the device, or unplugged from it. ACTION_SCREEN_ON Broadcast Receiver The screen has been turned on. ACTION_TIMEZONE_CHA NGED Broadcast Receiver The setting for the time zone has changed.
  • 10. Intent Filters- Data  The URI of the data to be acted on and the MIME type of that data. Different actions are paired with different kinds of data specifications. • The URI: At the highest level a URI reference (Uniform Resource Identifiers) in string form has the syntax o [scheme:]scheme-specific-part[#fragment] o For example: • Short for Multipurpose Internet Mail Extensions, a specification for formatting non-ASCII messages so that they can be sent over the Internet. For Examples: o For Text "text/plain" o For Image :"image/jpeg“ , "image/bmp“ ,"image/gif“ , "image/jpg“ ,"image/png" o For Video: "video/wav“, "video/mp4" 10 http://www.linuxtopia.org/online_books/android/devguide/guide/topics/intents/intents-filters.html mailto:java-net@java.sun.com news:comp.lang.java
  • 11. Intent Filters- Data 2 Sr.No. Action/Data Pair & Description 1 ACTION_VIEW content://contacts/people/1 Display information about the person whose identifier is "1". 2 ACTION_DIAL content://contacts/people/1 Display the phone dialer with the person filled in. 3 ACTION_VIEW tel:123 Display the phone dialer with the given number filled in. 4 ACTION_DIAL tel:123 Display the phone dialer with the given number filled in. 5 ACTION_EDIT content://contacts/people/1 Edit information about the person whose identifier is "1". 11 <intent-filter . . . > <data android:type="video/mpeg" android:scheme="http" . . . /> <data android:type="audio/mpeg" android:scheme="http" . . . /> . . . </intent-filter> Some examples of Action/Data Pair
  • 12. Intent Filters- Category  The Intent class defines several category constants, including these (More than 29 category): 12 https://www.tutorialspoint.com/android/android_intent_standard_categories.htm Constant Meaning CATEGORY_BROWSABLE The target activity can be safely invoked by the browser to display data referenced by a link — for example, an image or an e-mail message. CATEGORY_DEFAULT Set if the activity should be an option for the default action (center press) to perform on a piece of data. CATEGORY_APP_MAPS Used with ACTION_MAIN to launch the maps application. CATEGORY_LAUNCHER an activity on the top of stack, whenever application will start, the activity containing this category will be opened first..
  • 13. Intent Filters- Extras 13 https://www.tutorialspoint.com/android/android_intent_standard_extra_data.htm • This will be in KEY-VALUE PAIRS for additional information that should be delivered to the component handling the intent. The extras can be set and read using the putExtras() and getExtras() methods respectively (More than 26 Extras): • For examples : • EXTRA_EMAIL: A String[] holding e-mail addresses that should be delivered to. • EXTRA_HTML_TEXT: A constant String that is associated with the Intent, used with ACTION_SEND to supply an alternative to EXTRA_TEXT as HTML formatted text. Intent i=new Intent(context,SendMessage.class); i.putExtra("id", user.getUserAccountId()+""); i.putExtra("name", user.getUserFullName()); context.startActivity(i);
  • 14. Intent Filters- Flags 1  Flags defined in the Intent class that function as metadata for the intent. The flags may instruct the Android system how to launch an activity and how to treat it after it’s launched. (More than 33 Flags):  FLAG_ACTIVITY_CLEAR_TASK - Clear any existing tasks on this stack before starting the activity.  FLAG_ACTIVITY_NEW_TASK - Start the activity in a new task or reuse an existing task tied to that activity. 14 https://inthecheesefactory.com/blog/understand-android-activity-launchmode/en Intent i=new Intent(this, Sample.class); i.setFlags(Intent. FLAG_ACTIVITY_NEW_TASK); startActivity(i);
  • 15. Intent Filters- Flags 2  How FLAG_ACTIVITY_NEW_TASK work:  With normal intent StartActivity  With FLAG_ACTIVITY_NEW_TASK: 15 https://inthecheesefactory.com/blog/understand-android-activity-launchmode/en
  • 16. Important Questions?  Define Android intents? Ans : Slide 2  Mention mainly used of Android intents ? Ans : Slide 3  Explain the Types of Android Intents? Ans : Slide 4,5  Give Three examples of using Android Intents as : Ans : Slide 6 a) Use explicit intents? b) Use implicit intent?  What are the elements of intent filter list them with short definition ? Ans : Slide 7  Give Three intent Action filter name and goal when apply on: a) Activity? Ans : Slide 8 b) Broadcast Receiver? Ans : Slide 9  Define Data intent filter and Explain (URL or MIME ) with example? Ans : Slide 7,10  What is Category intent filter end explain only Two type of it? Ans : Slide 7,12  Explain Extras intent filter and write sample java code to implement it ? Ans : Slide 7, 13  Explain Flags intent filter and write sample java code to implement it ? Ans : Slide 7,14 16

Editor's Notes

  • #9: The action largely determines how the rest of the intent is structured — particularly the data and extras fields — much as a method name determines a set of arguments and a return value. For this reason, it's a good idea to use action names that are as specific as possible, and to couple them tightly to the other fields of the intent. In other words, instead of defining an action in isolation, define an entire protocol for the Intent objects your components can handle. The action in an Intent object is set by the setAction() method and read by getAction().
  • #11: For Text "text/plain" For Image "image/jpeg" "image/bmp" "image/gif" "image/jpg" "image/png" For Video "video/wav" "video/mp4"
  • #12: For Text "text/plain" For Image "image/jpeg" "image/bmp" "image/gif" "image/jpg" "image/png" For Video "video/wav" "video/mp4"