<intent-filter>

语法
<intent-filter android:icon="drawable resource"
               android:label="string resource"
               android:priority="integer" >
    ...
</intent-filter>
包含在
<activity>
<activity-alias>
<service>
<receiver>
<provider>
必须包含
<action>
可以包含
<category>
<data>
描述
指定活动、服务或广播接收器可以响应的意图类型。意图过滤器声明其父组件的功能:活动或服务可以做什么以及接收器可以处理哪些类型的广播。

它为组件打开接收广告类型的意图,同时过滤掉对组件没有意义的意图。过滤器的大部分内容由其 <action><category><data> 子元素描述。

有关过滤器的更详细讨论,请参阅 意图和意图过滤器 以及应用清单概述中的 意图过滤器 部分。

属性
android:icon
当父活动、服务或广播接收器被呈现给用户时,它代表该组件的图标,表示组件具有过滤器所描述的功能。

此属性设置为对包含图像定义的drawable资源的引用。默认值为父组件的 icon 属性设置的图标。如果父级没有指定图标,则默认值为 <application> 元素设置的图标。

有关意图过滤器图标的更多信息,请参阅应用清单概述中的 图标和标签 部分。

android:label
父组件的用户可读标签。当组件被呈现给用户时,此标签(而不是父组件设置的标签)用于表示组件具有过滤器所描述的功能。

标签设置为对字符串资源的引用,以便它可以像用户界面中的其他字符串一样进行本地化。但是,为了方便您在开发应用程序时,也可以将其设置为原始字符串。

默认值为父组件设置的标签。如果父级没有指定标签,则默认值为 <application> 元素的 label 属性设置的标签。

有关意图过滤器标签的更多信息,请参阅应用清单概述中的 图标和标签 部分。

android:priority
赋予父组件的优先级,关于处理过滤器所描述类型的意图。此属性对活动和广播接收器都有意义。
  • 它提供有关活动响应与过滤器匹配的意图的能力的信息,相对于其他也可以响应该意图的活动。当多个活动具有不同优先级时,Android 仅将具有较高优先级值的活动视为该意图的潜在目标。
  • 它控制广播接收器执行以接收广播消息的顺序,具有较高优先级值的接收器在具有较低值的接收器之前被调用。该顺序仅适用于同步消息。它被忽略用于异步消息。

仅当您需要强制执行接收广播的特定顺序或希望强制 Android 优先考虑一个活动而不是其他活动时,才使用此属性。

该值是一个整数,例如 100。数字越大,优先级越高。默认值为 0

在某些情况下,请求的优先级被忽略,并且该值被限制为 0。当出现以下情况时,就会发生这种情况

有关更多信息,请参阅 setPriority()

android:order

当多个过滤器匹配时,处理过滤器的顺序。

orderpriority 的区别在于,priority 适用于所有应用程序,而 order 用于区分单个应用程序中的多个匹配过滤器。

当多个过滤器可以匹配时,请使用定向意图。

该值为整数,例如 100。数字越大,越先匹配。默认值为 0

此属性在 API 级别 28 中引入。

android:autoVerify
Android 是否需要验证来自指定主机的数字资产链接 JSON 文件是否与该应用程序匹配。

有关更多信息,请参阅 验证 Android 应用程序链接

默认值为 false

此属性在 API 级别 23 中引入。

引入于
API 级别 1
另请参阅
<action>
<category>
<data>