intent-filter-element.jd revision 9c3209db78bf171f5055baae376f7bdfdfba4a9f
19066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectpage.title=<intent-filter>
29066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project@jd:body
39066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
49066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project<dl class="xml">
59066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project<dt>syntax:</dt>
69066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project<dd><pre class="stx">&lt;intent-filter android:<a href="#icon">icon</a>="<i>drawable resource</i>"
79066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project               android:<a href="#label">label</a>="<i>string resource</i>"
89066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project               android:<a href="#priority">priority</a>="<i>integer</i>" &gt;
99066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    . . .
109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project&lt;/intent-filter&gt;</pre></dd>
119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project<dt>contained in:</dt>
139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project<dd><code><a href="{@docRoot}guide/topics/manifest/activity-element.html">&lt;activity&gt;</a></code>
149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project<br/><code><a href="{@docRoot}guide/topics/manifest/activity-alias-element.html">&lt;activity-alias&gt;</a></code>
159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project<br/><code><a href="{@docRoot}guide/topics/manifest/service-element.html">&lt;service&gt;</a></code>
169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project<br/><code><a href="{@docRoot}guide/topics/manifest/receiver-element.html">&lt;receiver&gt;</a></code></dd>
179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project<dt>must contain:</dt>
199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project<dd><code><a href="{@docRoot}guide/topics/manifest/action-element.html">&lt;action&gt;</a></code></dd>
209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project<dt>can contain:</dt>
229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project<dd><code><a href="{@docRoot}guide/topics/manifest/category-element.html">&lt;category&gt;</a></code>
239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project<br/><code><a href="{@docRoot}guide/topics/manifest/data-element.html">&lt;data&gt;</a></code></dd>
249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project<dt>description:</dt>
269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project<dd>Specifies the types of intents that an activity, service, or broadcast 
279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectreceiver can respond to.  An intent filter declares the capabilities of its
289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectparent component &mdash; what an activity or service can do and what types 
299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectof broadcasts a receiver can handle.  It opens the component to receiving 
309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectintents of the advertised type, while filtering out those that are not 
319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectmeaningful for the component.
329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project<p>
349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source ProjectMost of the contents of the filter are described by its 
359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project<code><a href="{@docRoot}guide/topics/manifest/action-element.html">&lt;action&gt;</a></code>, 
369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project<code><a href="{@docRoot}guide/topics/manifest/category-element.html">&lt;category&gt;</a></code>, and
379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project<code><a href="{@docRoot}guide/topics/manifest/data-element.html">&lt;data&gt;</a></code> subelements.
389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project</p>
399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project<p>
419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source ProjectFor a more detailed discussion of filters, see the separate  
429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project<a href="{@docRoot}guide/topics/intents/intents-filters.html">Intents 
439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectand Intent Filters</a> document, as well as the 
449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project<a href="{@docRoot}guide/topics/manifest/manifest-intro.html#ifs">Intents Filters</a> 
459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectsection in the introduction.
469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project</p></dd>
479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project<dt>attributes:</dt>
499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project<dd><dl class="attr">
509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project<dt><a name="icon"></a>{@code android:icon}</dt>
519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project<dd>An icon that represents the parent activity, service, or broadcast
529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectreceiver when that component is presented to the user as having the 
539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectcapability described by the filter.
549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project<p>
569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source ProjectThis attribute must be set as a reference to a drawable resource 
579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectcontaining the image definition.  The default value is the icon set 
589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectby the parent component's {@code icon} attribute.  If the parent 
599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectdoes not specify an icon, the default is the icon set by the
609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project<code><a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a></code> element.
619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project</p>
629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project<p>
649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source ProjectFor more on intent filter icons, see 
659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project<a href="{@docRoot}guide/topics/manifest/manifest-intro.html#iconlabel">Icons and Labels</a>
669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectin the introduction.
679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project</p></dd>
689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project<dt><a name="label"></a>{@code android:label}</dt>
709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project<dd>A user-readable label for the parent component.  This label, rather than
719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectthe one set by the parent component, is used when the component is presented
729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectto the user as having the capability described by the filter.
739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project<p>
759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source ProjectThe label should be set as a reference to a string resource, so that
769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectit can be localized like other strings in the user interface.  
779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source ProjectHowever, as a convenience while you're developing the application, 
789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectit can also be set as a raw string.
799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project</p>
809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project<p>
829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source ProjectThe default value is the label set by the parent component.  If the 
839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectparent does not specify a label, the default is the label set by the
849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project<code><a href="{@docRoot}guide/topics/manifest/application-element.html">&lt;application&gt;</a></code> element's 
859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project<code><a href="{@docRoot}guide/topics/manifest/application-element.html#label"> label</a></code> attribute.
869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project</p>
879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project<p>
899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source ProjectFor more on intent filter labels, see 
909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project<a href="{@docRoot}guide/topics/manifest/manifest-intro.html#iconlabel">Icons and Labels</a>
919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectin the introduction.
929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project</p></dd>
939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project<dt><a name="priority"></a>{@code android:priority}</dt>
959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project<dd>The priority that should be given to the parent component with regard
969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectto handling intents of the type described by the filter.  This attribute has 
979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectmeaning for both activities and broadcast receivers:
989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project<ul>
1009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project<li>It provides information about how able an activity is to respond to 
1019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectan intent that matches the filter, relative to other activities that could
1029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectalso respond to the intent.  When an intent could be handled by multiple 
1039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectactivities with different priorities, Android will consider only those with
1049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projecthigher priority values as potential targets for the intent.</li>
1059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
1069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project<li><p>It controls the order in which broadcast receivers are executed to
1079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectreceive broadcast messages.  Those with higher priority 
1089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectvalues are called before those with lower values.  (The order applies only 
1099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectto synchronous messages; it's ignored for asynchronous messages.)</p></li>
1109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project</ul>
1119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
1129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project<p>
1139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source ProjectUse this attribute only if you really need to impose a specific order in 
1149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectwhich the broadcasts are received, or want to force Android to prefer
1159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectone activity over others.
1169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project</p>
1179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
1189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project<p>
1199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source ProjectThe value must be an integer, such as "{@code 100}".  Higher numbers have a
1209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projecthigher priority.
1219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project</p></dd>
1229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
1239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project</dl></dd>
1249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
1259c3209db78bf171f5055baae376f7bdfdfba4a9fDirk Dougherty<!-- ##api level indication## -->
1269c3209db78bf171f5055baae376f7bdfdfba4a9fDirk Dougherty<dt>introduced in:</dt>
1279c3209db78bf171f5055baae376f7bdfdfba4a9fDirk Dougherty<dd>API Level 1</dd>
1289c3209db78bf171f5055baae376f7bdfdfba4a9fDirk Dougherty
1299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project<dt>see also:</dt>
1309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project<dd><code><a href="{@docRoot}guide/topics/manifest/action-element.html">&lt;action&gt;</a></code>
1319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project<br/><code><a href="{@docRoot}guide/topics/manifest/category-element.html">&lt;category&gt;</a></code>
1329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project<br/><code><a href="{@docRoot}guide/topics/manifest/data-element.html">&lt;data&gt;</a></code></dd>
1339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
1349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project</dl>
135