1.高焕堂讲解Intent-basedProgramming..doc

上传人:sk****8 文档编号:3547610 上传时间:2019-06-04 格式:DOC 页数:2 大小:43.50KB
下载 相关 举报
1.高焕堂讲解Intent-basedProgramming..doc_第1页
第1页 / 共2页
1.高焕堂讲解Intent-basedProgramming..doc_第2页
第2页 / 共2页
亲,该文档总共2页,全部预览完了,如果喜欢就下载吧!
资源描述

1、1.高焕堂讲解 Intent-based ProgrammingAndroid 的 4 种嫡系组件(即 Activity、Service、IntentReceiver 和ContentProvider)之间如何互相沟通呢?这 4 种嫡系组件都是由 Android 启动的,并不是组件之间透过直接呼叫而启动的。就像我们打手机去车行叫出租车,而不是直接到街道上叫车。我们 送给行一个简讯一通电话,表明我们的意图(Intent) ,当车行经理接到此意图,就依据你的意图的内含条件而去挑选最合适的出租车,然后派遣它去接你。意图(Intent) 本身是定义为一个类别(Class),一个 Intent 对象表达

2、一个目的(Goal)或期望(Expectation),叙述其所期望的服务或动作、与动作有关的数据等。Android 则根据此 Intent 对象之叙述, 负责配对,找出相配的组件,然后将 Intent对象传递给所找到的组件,Android 的媒婆任务就完成了。因此,Intent 对象扮演着媒体中介的角色,提供 Client 组件 Android Server 组件之间互相沟通的相关信息,实现了 Client 组件与 Server 组件之间不知而亦能用之效果,这又称为疏结合(Loosely-coupled)效果。其创造了 Server 组件抽换的自由度,这又称为 PnP(Plug and Pla

3、y)。兹以下图为例,Activity 主要是提供 UI 画面来与 User 进行互动,两个Activity 之间的直接互动较少。其它如 ContentProvider 则常是为 Activity 等提供服务的。所以 Activity 发出 Intent 对象委托 Android 挑选到适当的ContentProvider 对象(并且将 Intent 对象传递给 ContentProvider 对象)之后,通常会透过 ContentProvider 接口而呼叫 ContentProvider 的各项服务或功能。在此图所示的范例里,当我们在一个订单列表画面(如 Activity-1),点选某个订单

4、之后,希望能够呈现出此订单的采购细项画面(如 Activity-2)。此时,Activity-1 需要 发出一个 Intent 对象, 这个 Intent 对象说明了意图:包括“查找”(Get)动作、 订单 ID 等数据,然后呼叫 Activity 父类别的 startActivity (Intent intent)函数,将此 Intent 对 象传送给 Android。而 Android 会根据此 Intent 对象中的叙述,与 AndroidManifest.xml 所叙述的各嫡系类别之条件相比较,找出与此 Intent 叙述相配的 组 件( 如 Activity-2),然后 Android 将该 Intent 对象递交给它,于是 Activity-2 会根据此 Intent 对象之叙述而 执行相应的动作。(by Misoo 团队)

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育教学资料库 > 精品笔记

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。