Intent简介及属性
来源:互联网 发布:linux rsysnc 编辑:程序博客网 时间:2024/05/22 04:39
部分内容来自以下相关文章:http://liangruijun.blog.51cto.com/3061169/634411
http://www.cnblogs.com/engine1984/p/4146621.html
本文内容包括
- Intent简介
- Intent属性
- Intent过滤器简介
Intent简介
1. Intent的介绍
Intent的中文意思是“意图,意向”,在Android中提供了Intent机制来协助应用间的交互与通讯,Intent负责对应用中一次操作的动作、动作涉及数据、附加数据进行描述,Android则根据此Intent的描述,负责找到对应的组件,将 Intent传递给调用的组件,并完成组件的调用。Intent不仅可用于应用程序之间,也可用于应用程序内部的Activity/Service之间的交互。因此,可以将Intent理解为不同组件之间通信的“媒介”专门提供组件互相调用的相关信息。
2. Inten启动组件的方法
Intent可以启动一个Activity,也可以启动一个Service,还可以发起一个广播Broadcasts。具体方法如下:
bindService() Broadcasts sendBroadcasts()
sendOrderdBroadcasts()
sendStickyBroadcasts()
3. Intent的属性
- 动作(Action)
- 数据(Date)
- 种类(Category)
- 额外(Extra)
- 标记(Flag)
- 类型(Type)
- 组件(Compent)
其中最常用的有Action属性和Data属性。
Intent的属性
1. Action属性
action是指Intent将要执行的动作,是一个字符串常量。在广播Intent中,Action用来表示已经发生即将报告的动作。
- setAction()设置
- getAction()方法读取
- 标准Activity动作
通常使用Context.startActivity()方法启动Activity
- 标准Broadcast(广播)动作
通常使用Context.registerReceiver()方法或配置文件中的< receiver>标签
2. Data属性
· 如果动作是ACTION_EDIT,数据应该包含用来编辑的文档的URI。
· 如果动作是ACTION_CALL,数据应该是包含呼叫号码的tel:URI。
· 如果动作是ACTION_VIEW而且数据是http:URI,接收的Activity用来下载和显示URI指向的数据。
- setData()指定数据的URI
- setType()制定数据的MIME类型
- setDataAndType()可同时设置URI和MIME类型
- getData()读取URI
- getType()读取MIME类型
3. Category属性
种类是字符串常量,是一个执行动作action的附加信息。在Intent对象中可以增加任意多个种类描述。
- addCategory()在Intent对象中添加种类
- removeCategory()删除上次增加的种类
- getCategories()获取当前对象的所有种类
4. Extra属性
Extra属性是添加一些组件的附加信息。比如,如果我们要通过一个Activity来发送一个Email,就可以通过Extra属性来添加subject和body。
- putExtra()添加额外信息
- getExtra()读取额外信息
5. Flag属性
整数类型,表示不同种类的标记。多数用于指示Android系统如何启动Activity(例如,Activity该属于哪个Task)以及启动后如何对待(例如,它是否属于近期的Activity列表)。
6. Type属性
Type属性显式指定Intent的数据类型(MIME)。一般Intent的数据类型能够根据数据本身进行判定,但是通过设置这个属性,可以强制采用显式指定的类型而不再进行推导。
7. Compent属性
Compent属性指定Intent目标组件的类名称。通常 Android会根据Intent 中包含的其它属性的信息,比如action、data/type、category进行查找,最终找到一个与之匹配的目标组件。但是,如果 compent这个属性有指定的话,将直接使用它指定的组件,而不再执行上述查找过程。指定了这个属性以后,Intent的其它所有属性都是可选的。
Intent过滤器简介
Activity、Service和BroadcastReceiver能定义多个Intent过滤器来通知系统它们可以处理哪些隐式Intent。每个过滤器描述组件的一种能力,以及该组件可以接收的一组Intent。实际上,过滤器接收需要类型的Intent,拒绝不需要类型的Intent,但是仅限于隐式Intent。显式Intent无论其内容总可以发送给它的目标,过滤器并不干预。但是,隐式Intent只有在通过组件的Intent过滤器之后才能发送给组件。
- Intent简介及属性
- Intent跳转及属性
- Intent及其七大属性及intent-filter
- Android:Intent Filter简介及属性(action、Category等)匹配方式说明
- Android的Intent&IntentFilter Intent属性及Intent-filter配置
- Intent的简介以及属性详解
- Intent的简介以及属性详解
- Intent的简介以及属性详解
- Intent的简介以及属性详解
- Intent的简介以及属性详解
- Intent的简介以及属性的详解
- Intent的简介以及属性的详解
- Intent的简介和属性的详解
- Intent的简介以及属性的详解
- Intent的简介以及属性的详解
- Intent的简介以及属性的详解
- Intent的简介以及属性的详解
- Intent及其七大属性及intent-filter设置
- 顺序表应用5:有序顺序表归并
- 常见的代码性能优化
- 网易面试题引发的思考
- EasyNVR RTSP转RTMP-HLS流媒体服务器前端构建之:关于接口调用常见的一些问题(401 Unauthorized)
- JavaScript 内存泄漏教程
- Intent简介及属性
- 如何使用web3.js 部署智能合约
- 图说Java —— 理解Java机制最受欢迎的8幅图
- LeetCode算法题——Wildcard Matching
- JavaScript ES6中export及export default的区别
- Server Tomcatv8.5 Server at localhost failed to start
- Chrome开发工具窗口使用记录
- pillow.Image.open() 对某些jpg文件报OSError
- 七牛云查看音视频资源的元信息-avinfo