`
- 浏览:
23993 次
- 性别:
- 来自:
西安
-
Android、Intent的深入解析
在Android软件环境中,应用程序是由一组Activities 组成的,而每一个Activity 不但是本应用的组成部分,而且也对外开放,可以向同一系统内任何一个外部应用提供服务。例如,编制手机短信无疑需要一个小型编辑器,这个编辑器在Android中由一个Activity 实现,并且可以以构件的形式暴露出来。如果开发者在开发另外一个应用程序的过程中需要一个小型编辑器,则无须重新开发,可直接调用短信应用中的这个编辑器Activity 得以实现。这种多层次的组合能力,与Web 2.0 基于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 本身既是提供服务的组件,也可以是组件的客户。
例如一个备忘录应用中,应用启动时可以显示一个现有备忘录的列表,这是由一个activity 实现的。而当用户选择编辑或新建一个备忘时,这个activity 需要一个文本编辑器activity 来完成这项工作。它怎么做呢?当然不需要自己从头开发一个,而只需要以intent 的方式告诉系统说:“我需要一个具有编辑文本能力的activity 来帮我编辑一个备忘信息”,系统会自动寻找在<intentfilter>中声称具有该项能力的activity,然后激活这个activity,用来满足这个intent。
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
主要介绍了Android中的Intent对象,深入讲解了intent对象传递消息的各种用法,需要的朋友可以参考下
Tips >later Main Android中的异步任务机制 Android中AsyncTak的使用与源码分析 ...Android中Intent传递对象的两种方法(Serializable,Parcelable) 评论 29,85,96 序列化: Serializable与Parce
Android之父深入解析Android Activity 、Intent深入解析
1. 使用蓝牙的响应权限 代码如下:<uses android:name=”android.permission.BLUETOOTH”><uses android:name=”android.permission.BLUETOOTH_ADMIN”>2. 配置本机蓝牙模块 在这里首先要了解对蓝牙操作一个核心类...
9.1.4 Android解析Intent实现 9.2 用广播告诉你——利用Intent来广播(BroadCast)事件 9.2.1 实现Android中的广播事件 9.2.2 BroadCastReceiver介绍 9.3 应用实例详解 9.3.1 程序操作演示 9.3.2 实例编程实现 9.4 本...
9.1.4 Android解析Intent实现 9.2 用广播告诉你——利用Intent来广播(BroadCast)事件 9.2.1 实现Android中的广播事件 9.2.2 BroadCastReceiver介绍 9.3 应用实例详解 9.3.1 程序操作演示 9.3.2 实例编程实现 9.4 本...
第5章解析了Android中各个组件的生命周期,包括组件的进程模型和线程模型;第6章从开发的角度详细阐述了组件间数据传递的解决方案,以及它们的优缺点和适用场景。第三部分(7-8章):第7章深入讲解了Android的控件...
9.1.4 android解析intent实现 179 9.2 用广播告诉你——利用intent来广播(broadcast)事件 180 9.2.1 实现android中的广播事件 180 9.2.2 broadcast receiver介绍 181 9.3 应用实例详解 181 9.3.1 ...
在介绍程序实现之前,我们先看下Android中Activities和Task的基础知识。 我们都知道,一个Activity 可以启动另一个Activity,即使这个Activity是定义在别一个应用程序里的,比如说,想要给用户展示一个地图的信息,...
通过深入解析这些组件的交互方式和工作原理,帮助开发者更好地理解Android系统的底层逻辑。 接着,课件详细讲解了Android开发的关键技术和要点,包括Activity和Service的生命周期管理、Intent和BroadcastReceiver的...
第7章 Android动画深入分析 / 265 7.1 View动画 / 265 7.1.1 View动画的种类 / 265 7.1.2 自定义View动画 / 270 7.1.3 帧动画 / 272 7.2 View动画的特殊使用场景 / 273 7.2.1 LayoutAnimation / 273 ...
9.1.4 Android解析Intent实现 9.2 用广播告诉你——利用Intent来广播(BroadCast)事件 9.2.1 实现Android中的广播事件 9.2.2 BroadCastReceiver介绍 9.3 应用实例详解 9.3.1 程序操作演示 9.3.2 实例编程实现 9.4 本...
第 5 章 我要打电话——电话与短信应用 5.1 什么是 Intent 5.1.1 Intent 的主要组成部分 5.2 解析 Intent 5.2.1 显式 Intent 和隐式 Intent 5.2.2 Intent 过滤器...5.5 Android 中电话和短信服务的包 5.6 小结
9.1.4 Android解析Intent实现 179 9.2 用广播告诉你——利用Intent来广播(BroadCast)事件 180 9.2.1 实现Android中的广播事件 180 9.2.2 BroadCast Receiver介绍 181 9.3 应用实例详解 181 9.3.1 ...
12.3.1 在Android应用中使用 OpenGL ES 454 12.3.2 绘制平面上的多边形 457 12.3.3 旋转 463 12.4 绘制3D图形 465 12.4.1 构建3D图形 465 12.4.2 应用纹理贴图 469 12.5 本章小结 475 第13章 ...
深入.动手做. 1.1 红透半边天的Android 1.2 本书目的及涵盖范例范围 1.3 如何阅读本书 1.4 使用本书范例 1.5 参考网站 第2章 Android初体验 2.1 安装AndroidSDK与ADTplug-in 2.2 建立第一个Android项目(Hello...
16 1.2.2 Activity的Flags / 27 1.3 Intent Filter的匹配规则 / 28 第2章 IPC机制 / 35 2.1 Android IPC简介 / 35 2.2 Android中的多进程模式 / 36 2.2.1 开启多进程模式 / 36 2.2.2 多进程模式的运行机制 / ...
深入.动手做. 1.1 红透半边天的Android 1.2 本书目的及涵盖范例范围 1.3 如何阅读本书 1.4 使用本书范例 1.5 参考网站 第2章 Android初体验 2.1 安装AndroidSDK与ADTplug-in 2.2 建立第一个Android项目(Hello...