intent 的各种属性
1.component
首先要有componentName,需要指定包名和类名 或者使用setClass()指定包名和类名
2.Action
action是一个字符串,一个intent对象只包含一个action属性,目标组件包括activity和BroadcastReceiver两类
(1)标准activity动作
ACTION_MAIN
ACTION_VIEW 等,每个动作都有唯一的字符串标识
(2)标准 BroadcastReceiver动作
例如
ACTION_TIME_TICK 用来每分钟通知一次时间
详细全部内容请参考android 官方API文档中关于Intent的说明
3.Category
Category也是一个字符串,用于为action增加额外的附加类别信息
4.Data and Type
data用于向action提供操作的数据,接受一个url对象,一个url对象通常通过以下字符串来表示
content://com.android.contacts/contacts/1
tel:123
url字符串通用格式 scheme://host:port/path
Type用于指定Data所制定的url的MIME类型,data和type会互相覆盖,如果希望兼容,需要调用setDataAndType()方法
5. Extra
通常用于多个activity之间交换数据 ,extra应该是一个bundle对象,而bundle对象又是一个map数据结构对象,是一个类似python字典中有映射关系的对象,可以存入key-value
6. flag
能够为Intent添加一些额外的控制标记
intents的各种类型
1.显式Intent
指定了component的intent 明确将启动哪个组件
2.隐式Intent
由系统自动选择合适的组件执行Intent