对于Intent之前虽然用的比较多,但仅限于setClass或setClassName等,没有深入研究过。所以有必要深入学习下。
使用Intent的时候有两种情况:
一种是直接Intent:指定了component或者于setClass或setClassName。这种Intent,android不需要解析,直接找到目标并激活。
另一种是间接Intent:没有指定component。这些Intent就需要包含很多信息。Intent解析的机制就是通过查找注册在Manifest。xml中的Intentfilter以及其中定义的Intent。是通过Intent的action、type和category这3属性来判断。
具体的用到再看就行,以下是几个例子:
注:new Intent(String action),参数指定了antion。
这几个都是直接调用系统的对象,若是调用自己的目标,就需要用到intent-filter。这个的原理就简单了,根据Intent里的信息过滤而已。用到的时候看下就OK。