IntentFilter中有Action,Data,Category三个用于匹配的属性,以下为三种属性可以匹配的情况总结:
Action:
- 值相同,或者IntentFilter未指定Action
Data :
- 设置了scheme 而没设type,则intent也必须类似,不能设置type,也不能是content: URI.
- 设置了type而没设scheme:将匹配上没有URI的intent,或者content:,file:的uri。
- 设置了authority:必须指定一个或多个相关联的schemes
- 设置了path:必须指定一个或多个相关联的schemes
Category:
- 如果Intent中的Category集合是Intentfilter中Category的集合的子集时,Intent才能通过检查。如果Intent中没有设置Category,则它能通过所有Intentfilter的Category检查。
本文详细阐述了Android中IntentFilter的Action、Data和Category三个关键属性的匹配规则。包括不同情况下的Action匹配条件,Data中scheme、type、authority及path的设定要求,以及Category集合的匹配逻辑。
928

被折叠的 条评论
为什么被折叠?



