Intent 和 Intent filter
1、一个隐式Intent请求必须要通过三方面的检查:action、data、category。
2、一条<intent-filter>元素至少应该包含一个<action>,否则任何Intent请求都不能和该<intent-filter>匹配。
3、如果Intent请求的Action和<intent-filter>中某一条<action>(一个<intent-filter>元素中可以包含多条<action>)匹配,那么该Intent就通过了这条<intent-filter>的动作测试。
4、如果<intent-filter>中没有包含任何Action类型,那么无论什么Intent请求都无法和这条<intent-filter>匹配。
5、如果Intent请求中没有设定Action类型,那么只要<intent-filter>中包含有Action类型,这个Intent请求就将顺利地通过<intent-filter>的行为测试。
6、只有当Intent请求中所有的Category与组件中某一个IntentFilter的<category>完全匹配时,才会让该Intent请求通过测试,IntentFilter中多余的<category>(<intent-filter>可以声明多个<category>)声明并不会导致匹配失败。一个没有指定任何类别测试的IntentFilter仅仅只会匹配没有设置类别的Intent请求。
关于隐式Intent和IntentFilter
最新推荐文章于 2023-04-19 11:32:28 发布