android-安卓系统

上传人:xzh****18 文档编号:34633443 上传时间:2018-02-26 格式:DOC 页数:9 大小:115.50KB
返回 下载 相关 举报
android-安卓系统_第1页
第1页 / 共9页
android-安卓系统_第2页
第2页 / 共9页
android-安卓系统_第3页
第3页 / 共9页
android-安卓系统_第4页
第4页 / 共9页
android-安卓系统_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《android-安卓系统》由会员分享,可在线阅读,更多相关《android-安卓系统(9页珍藏版)》请在金锄头文库上搜索。

1、Android百科名片Android一词的本义指“机器人”,同时也是 Google于 2007年 11月 5日宣布的基于Linux平台的开源手机操作系统的名称,该平台由操作系统、中间件、用户界面和应用软件组成,号称是首个为移动终端打造的真正开放和完整的移动软件。目前,最新版本为Android 2.3 Gingerbread和 Android 3.0 Honeycomb。目录简介 系统架构 Android版本 开放手机联盟 Android平台经理谈 2011年 Android发展路线图简介 系统架构 Android版本 开放手机联盟 Android平台经理谈 2011年 Android发展路线图

2、展开简 介Android 是 基 于 Linux 内 核 的 操 作 系 统 , 是 Google 公 司 在 2007 年 11月 5 日 公 布 的 手 机 操 作 系 统 , 早 期 由 Google 开 发 , 后 由 开 放 手 持 设 备 联 盟( Open Handset Alliance) 开 发 。 它 采 用 了 软 件 堆 层 ( software stack, 又 名 以 软 件 叠 层 ) 的 架 构 , 主 要 分 为 三 部 分 。 底 层 Linux 内 核 只 提供 基 本 功 能 ; 其 他 的 应 用 软 件 则 由 各 公 司 自 行 开 发 , 部 分

3、 程 序 以 Java 编 写 。2010 年 末 数 据 显 示 , 仅 正 式 推 出 两 年 的 操 作 系 统 Android 已 经 超 越 称霸 十 年 的 诺 基 亚 ( Nokia) Symbian OS 系 统 , 采 用 Android 系 统 主 要 手 机厂 商 包 括 宏 达 电 子 ( HTC) 、 三 星 ( SAMSUNG) 、 摩 托 罗 拉 ( MOTOROLA) 、LG、 Sony Ericsson 等 , 使 之 跃 居 全 球 最 受 欢 迎 的 智 能 手 机 平 台 , Android系 统 不 但 应 用 于 智 能 手 机 , 也 在 平 板

4、电 脑 市 场 急 速 扩 张 。 系 统 架 构应 用 程 序Android 以 Java 为 编 程 语 言 , 使 接 口 到 功 能 , 都 有 层 出 不 穷 的 变 化 ,其 中 Activity 等 同 于 J2ME 的 MIDlet, 一 个 Activity 类 ( class) 负 责创 建 视 窗 ( window) , 一 个 活 动 中 的 Activity 就 是 在 foreground( 前 景 )模 式 , 背 景 运 行 的 程 序 叫 做 Service。 两 者 之 间 通 过 由ServiceConnection 和 AIDL 连 结 , 达 到 复

5、数 程 序 同 时 运 行 的 效 果 。 如 果 运行 中 的 Activity 全 部 画 面 被 其 他 Activity 取 代 时 , 该 Activity 便 被停 止 ( stopped) , 甚 至 被 系 统 清 除 ( kill) 。 View 等 同 于 J2ME 的 Displayable, 程 序 人 员 可 以 通 过 View 类 与“XML layout”档 将 UI 放 置 在 视 窗 上 , Android 1.5 的 版 本 可 以 利 用 View 打 造 出 所 谓 的 Widgets, 其 实 Widget 只 是 View 的 一 种 , 所 以

6、可 以 使用 xml 来 设 计 layout, HTC 的 Android Hero 手 机 即 含 有 大 量 的 widget。至 于 ViewGroup 是 各 种 layout 的 基 础 抽 象 类 ( abstract class) ,ViewGroup 之 内 还 可 以 有 ViewGroup。 View 的 构 造 函 数 不 需 要 再 Activity中 调 用 , 但 是 Displayable 的 是 必 须 的 , 在 Activity 中 , 要 通 过findViewById()来 从 XML 中 取 得 View, Android 的 View 类 的 显

7、示 很 大 程度 上 是 从 XML 中 读 取 的 。 View 与 事 件 ( event) 息 息 相 关 , 两 者 之 间 通 过Listener 结 合 在 一 起 , 每 一 个 View 都 可 以 注 册 一 个 event listener, 例如 : 当 View 要 处 理 用 户 触 碰 ( touch) 的 事 件 时 , 就 要 向 Android 框 架 注册 View.OnClickListener。 另 外 还 有 Image 等 同 于 J2ME 的 BitMap。 中 介 软 件操 作 系 统 与 应 用 程 序 的 沟 通 桥 梁 , 并 用 分 为

8、两 层 : 函 数 层 ( Library)和 虚 拟 机 ( Virtual Machine) 。 Bionic 是 Android 改 良 libc 的 版 本 。Android 同 时 包 含 了 Webkit, 所 谓 的 Webkit 就 是 Apple Safari 浏 览 器背 后 的 引 擎 。 Surface flinger 是 就 2D 或 3D 的 内 容 显 示 到 屏 幕 上 。Android 使 用 工 具 链 (Toolchain)为 Google 自 制 的 Bionic Libc。 Android 采 用 OpenCORE 作 为 基 础 多 媒 体 框 架

9、。 OpenCORE 可 分 7 大 块 :PVPlayer、 PVAuthor、 Codec、 PacketVideo Multimedia Framework(PVMF)、Operating System Compatibility Library(OSCL)、 Common、 OpenMAX。 Android 使 用 skia 为 核 心 图 形 引 擎 , 搭 配 OpenGL/ES。 skia 与Linux Cairo 功 能 相 当 , 但 相 较 于 Linux Cairo, skia 功 能 还 只 是 阳 春 型的 。 2005 年 Skia 公 司 被 Google 收 购

10、 , 2007 年 初 , Skia GL 源 码 被 公 开 ,目 前 Skia 也 是 Google Chrome 的 图 形 引 擎 。 Android 的 多 媒 体 数 据 库 采 用 SQLite 数 据 库 系 统 。 数 据 库 又 分 为 共 用数 据 库 及 私 用 数 据 库 。 用 户 可 通 过 ContentResolver 类 ( Column) 取 得 共用 数 据 库 。 Android 的 中 间 层 多 以 Java 实 现 , 并 且 采 用 特 殊 的 Dalvik 虚 拟 机( Dalvik Virtual Machine) 。 Dalvik 虚 拟

11、 机 是 一 种 “暂 存 器 型 态 ”( Register Based) 的 Java 虚 拟 机 , 变 量 皆 存 放 于 暂 存 器 中 , 虚 拟 机 的 指令 相 对 减 少 。 Dalvik 虚 拟 机 可 以 有 多 个 实 例 ( instance) , 每 个 Android 应 用 程 序都 用 一 个 自 属 的 Dalvik 虚 拟 机 来 运 行 , 让 系 统 在 运 行 程 序 时 可 达 到 优 化 。Dalvik 虚 拟 机 并 非 运 行 Java 字 节 码 ( Bytecode) , 而 是 运 行 一 种 称 为 .dex 格 式 的 文 件 。

12、硬 件 抽 像 层 (Hardware Abstraction Layer)Android 的 HAL( 硬 件 抽 像 层 ) 是 能 以 封 闭 源 码 形 式 提 供 硬 件 驱 动 模 块 。HAL 的 目 的 是 为 了 把 Android framework 与 Linux kernel 隔 开 , 让 Android 不 至 过 度 依 赖 Linux kernel, 以 达 成 kernel independent 的概 念 , 也 让 Android framework 的 开 发 能 在 不 考 量 驱 动 程 序 实 现 的 前 提 下进 行 发 展 。 HAL stub

13、 是 一 种 代 理 人 ( proxy) 的 概 念 , stub 是 以 *.so 档 的 形 式存 在 。 Stub 向 HAL“提 供 ”操 作 函 数 ( operations) , 并 由 Android runtime 向 HAL 取 得 stub 的 operations, 再 callback 这 些 操 作 函 数 。HAL 里 包 含 了 许 多 的 stub( 代 理 人 ) 。 Runtime 只 要 说 明 “类 型 ”, 即 module ID, 就 可 以 取 得 操 作 函 数 。 编 程 语 言Android 是 运 行 于 Linux kernel 之 上

14、 , 但 并 不 是 GNU/Linux。 因 为 在一 般 GNU/Linux 里 支 持 的 功 能 , Android 大 都 没 有 支 持 , 包 括Cairo、 X11、 Alsa、 FFmpeg、 GTK、 Pango 及 Glibc 等 都 被 移 除 掉 了 。Android 又 以 bionic 取 代 Glibc、 以 Skia 取 代 Cairo、 再 以 opencore 取 代 FFmpeg 等 等 。 Android 为 了 达 到 商 业 应 用 , 必 须 移 除 被 GNU GPL 授权 证 所 约 束 的 部 份 , 例 如 Android 将 驱 动 程

15、 序 移 到 userspace, 使 得Linux driver 与 Linux kernel 彻 底 分 开 。 bionic/libc/kernel/ 并 非 标准 的 kernel header files。 Android 的 kernel header 是 利 用 工 具 由 Linux kernel header 所 产 生 的 , 这 样 做 是 为 了 保 留 常 数 、 数 据 结 构 与 宏 。目 前 Android 的 Linux kernel 控 制 包 括 安 全 ( Security) , 存 储 器管 理 ( Memory Management) , 程 序 管

16、 理 ( Process Management) , 网 络 堆栈 ( Network Stack) , 驱 动 程 序 模 型 ( Driver Model) 等 。 下 载 Android源 码 之 前 , 先 要 安 装 其 构 建 工 具 Repo 来 初 始 化 源 码 。 Repo 是 Android 用 来 辅 助 Git 工 作 的 一 个 工 具 。 Android 版 本Android 1.1 发 布 时 间 : 发 布 于 2009 年 2 月 代 表 手 机 :T-MOBILE G1 Android 1.5 发 布 于 2009 年 5 月 代 表 手 机 : 摩 托 罗 拉 CILQ Android 1.6 2009 年 9 月 发 布 代 表 手 机 : 索 尼 爱 立 信 X10 Android 2.0 2009 年 10 月 26 日 代 表 机 型 : 摩 托 罗 拉 XT800, HTC G

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

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号