首页 > 代码库 > 今天把疯狂的Android 的 Intent(意图) 这章看了。总结了一些知识点
今天把疯狂的Android 的 Intent(意图) 这章看了。总结了一些知识点
Intent --- 表达自己的意图
通过 Intent 可以启动 (activity、service、BroadcastReceiver)
Intent 是程序组件之间通信的重要媒介
一个Intent 对象只能包含一个Action
Intent属性:Component、Action、Category、Data、Type、Extra、Flag
|---Component
用于指定需要启动的目标组件
Component 属性需要接受一个ComponentName 对象
ComponentName:需要指定包名和类名
指定了Component属性 明确要启动哪个组件 (显式意图)
|---Flag
用于携带需要交换的数据
|---Action 代表Intent 所要完成的抽象"动作"
|---Category 用于为Action增加额外的附加类别信息
|---Data 用于向Action 属性提供操作的数据 Data 属性接受一个(Uri) 对象
|
|----Uri对象 通过字符串的形式来表示
content://com.android.contacts/contacts/1
Uri 字符串格式规范:scheme://host:port/path scheme ==> content host===>com.android.contacts port(被省略) path===>contacts/1
|---Type 用于指定Uri的对象MIME类型可以自定义MIME类型 格式:(abc/xyz)即可
|---Extra Extra属性用于多个Action之间进行数据交换
|---Flag Flag 属性用于为该Intent添加一些额外的控制旗标
|
|-----常用的Flag旗标
|
|----FLAG_ACTIVITY_BROUGHT_TO_FRONT (通过 FLAG_ACTIVITY_BROUGHT_TO_FRONT 启动的Activity 下次启动的时候会直接从 activity 栈中把activity 带入栈顶 )
<intent-filter> 包含的子元素
1.<action>
2.<category>
3.<data>
今天把疯狂的Android 的 Intent(意图) 这章看了。总结了一些知识点