1 / 20
文档名称:

AndroidIntent详解样稿.doc

格式:doc   大小:94KB   页数:20页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

AndroidIntent详解样稿.doc

上传人:读书之乐 2020/11/13 文件大小:94 KB

下载得到文件列表

AndroidIntent详解样稿.doc

文档介绍

文档介绍:Intent 详解
一、 Intent 作用
Intent 是一个将要实施动作抽象描述,通常来说是作为参数来使用,由Intent来帮助完成android各个组件之间通讯。比如说调用startActivity()来开启一个activity,或由broadcaseIntent()来传输给全部感爱好BroadcaseReceiver, 再或由startService()/bindservice(),intent关键是用来开启其它activity 或service,所以能够将intent了解成activity之间粘合剂。
二、 Intent组成
要在不一样activity之间传输数据,就要在intent中包含对应东西,通常来说数据中最基础应该包含:
Action 用来指明要实施动作是什么,比如说ACTION_VIEW, ACTION_EDIT等。具体能够查阅android SDK-> ,里面constants中定义了全部action。
Data 要事实具体数据,通常由一个Uri变量来表示
下面是部分简单例子:
ACTION_VIEW content://contacts/1 //显示identifier为1联络人信息。
ACTION_DIAL content://contacts/1 //给这个联络人打电话
除了Action和data这两个最基础元素外,intent还包含部分其它元素,
Category(类别): 这个选项指定了将要实施这个action其它部分额外信息,比如 LAUNCHER_CATEGORY 表示Intent 接收者应该在Launcher中作为顶级应用出现;而ALTERNATIVE_CATEGORY表示目前Intent是一系列可选动作中一个,这些动作能够在同一块数据上实施。具体一样能够参考android SDK-> 。以前我也写过一篇于category相关文章,点击这里能够查看。
Type(数据类型): 显式指定Intent数据类型(MIME)。通常Intent数据类型能够依据数据本身进行判定,不过经过设置这个属性,能够强制采取显式指定类型而不再进行推导。
component(组件): 指定Intent目标组件 类名称。通常 Android会依据Intent 中包含其它属性信息,比如action、data/type、category进行查找,最终找到一个和之匹配目标组件。不过,假如 component这个属性有指定话,将直接使用它指定组件,而不再实施上述查找过程。指定了这个属性以后,Intent其它全部属性全部是可选。
extras(附加信息),是其它全部附加信息集合。使用extras能够为组件提供扩展信息,比如,假如要实施“发送电子邮件”这个动作,能够将电子邮件标题、正文等保留在extras里,传给电子邮件发送组件。
下面是这些额外属性多个例子:
ACTION_MAIN with category CATEGORY_HOME //用来 Launch home screen. 以前我也写过一篇于和之相关文章, 点击这里能够看到。
ACTION_GET_CONTENT with MIME type //用来列出列表中全部些人电话号码
综上能够看出,action、 data/type、category和extras 一起形成了一个语言,这种语言能够是android能够表示出诸如“给张三打电话”之类短语组合。
三、 intent解析
应用程序组件为了告诉Android自己能响应、处理哪些隐式Intent请求,能够申明一个甚至多个Intent Filter。每个Intent Filter描述该组件所能响应Intent请求能力——组件期望接收什么类型请求行为,什么类型请求数据。比如之前请求网页浏览器这个例子中,网页浏览器程序Intent Filter就应该申明它所期望接收Intent Action是WEB_SEARCH_ACTION,和和之相关请求数据是网页地址URI格式。怎样为组件申明自己Intent Filter? < Intent-Filter>描述组件Intent Filter。
  前面我们提到,隐