@读书笔记
我们知道,启动Activity分为两种方式,显示调用和隐式调用。显示调用需要明确的指定被启动对象的组件信息,包括包名和类名,而隐式调用需要Intent能够匹配目标组件的IntentFilter中所设置的过滤信息,如果不匹配将无法启动目标Activity. IntentFilter中的过滤信息有
- action
- category
- data
过滤规则的示例如下:
<activity android:name="com.simon.activity.SecondActivity"
android:launchMode="singleTask"
>
<intent-filter>
<action android:name="com.simon.activity1"/>
<action android:name="com.simon.activity2"/>
<category android:name="com.simon.activity3"/>
<category android:name="com.simon.activity4"/>
<category android:name="android.intent.category.DEFAULT"/>
<data android:mimeType="text/plain"/>
</intent-filter>
</activity>
为了匹配过滤列表,需要同时匹配过滤列表中的action,category,data信息否则匹配失败。 一个过滤列表中的action,category和data可以有多个,所有的acti