本文来自:安卓航班网
Android之父曾经特别强调过:Android吸收了从COM构件体系到Web 2.0等技术体系的思想精髓,实现了多处技术创新,其中尤以应用程序级别的mash-up为最令他自豪的特性。
何谓Mush—up?
举个简单的例子:从一个网页上抓下一块XHTML 数据,再从另一个Web Services 那里获得一些XML数据,就可以把这两块数据mash-up起来,形成新的XML数据,并且这一数据可以在此被别人mash-up。
Android 调用activity 所提供的接口(服务),并不是直接调用,而是借助一个叫做Intent 的机制实现的。所谓intent 就是对于服务的调用请求。与其他技术体系不同的是,Android可以无须明确地指定要那个组(activity)来满足自己的调用请求,而是可以要求系统根据它的要求,自动选择一个能够满足要求的activity 来提供所需的服务。
每一个activity 都可以对外提供一系列的服务,这些服务以Intent-filter 的形式对外公开,并提交给系统进行注册。所谓intent-filter,就是一个activity 的能力列表。例如,一个用于编辑短信正文的文本编辑器activity 应通过AndroidManifest.xml文件中的<intentfilter>元素向系统注册,表明activity具有EDIT 和VIEW文本数据的能力,如果有另一个客户要求EDIT和VIEW一段文本数据,则系统可以调用本activity 予以满足。Activity 本身既是提供服务的组件,也可以是组件的客户。
了解了这么多谈谈Intent的 定义:intent 就是一次对将要执行的操作的抽象描述!!
何谓操作的抽象描述?
1. 对动作的描述 action
2.对这次动作相关联的数据进行描述--data
3.对数据类型的描述 --type
4.对执行动作的附加信息进行描述--category
5.对一切附加信息的描述--extras
6.对目标组件的描述--component
这就是对intent机制最棒的描述,其对事物行为抽象值得借鉴!
原文地址:http://www.apkway.com/forum.php?mod=viewthread&tid=1425&extra=page%3D6