intentFilter 匹配

隐式调用

一个 Activity 可以包含多个intentFilter 

action : intent 中  intent.setAction 只能存放一个一个action (一个字符串),多次setAction ,后面的会覆盖前面的值,

intent中的action 只要能和 intentFilter 中的其中一个的Action 匹配成功就算是action 匹配成功

如:

Intent intent = new Intent();

intent.setAction("com.jinxiong_li.APP");
<intent-filter>

    <action android:name="com.jinxiong_li.APP"/>
    <action android:name="android.intent.action.ANSWER"/>
</intent-filter>
那么 这个 action就可以匹配成功

category 当你没在intent中设置 addCategory 的时候  系统会自动为其添加android.intent.category.DEFAULT
	
在intentFilter 中 必须添加DEFAULT 即使你手动设置了addcategory 
当你没有在intent中addcategory 的时候 ,getCategories 的时候, 返回的是null(不知为何)


/**/补充:
不含有default 这个category的Activity 是不能够接受 implicit intent(隐式intent)
  





你可能感兴趣的:(intentFilter 匹配)