androidframework概要
制氧机,家庭制氧机 Android 采用“ 分层” 的架构设计。 下图展示了 Android 操作系统的主要组件。应用层(Applications) Android 将配备一系列核心应用程序,包括电子邮件客户端,短信程序,日历,地图,浏 览器,通讯录等。所有的应用程序都是使用 Java 编程语言。 应用框架层(Application Framework) 通过提供一个开放的开发平台,Android 提供给开发者建立极其丰富和创新应用的能力。 开发者自由地享有硬件设备的优势,访问本地信息,运行后台服务,设置警示,向状态栏 添加通知等。 开发人员可以使用和核心应用程序使用的完全相同的 API 框架。应用程序架构的设计的目 的是为了简化组件的重用;任何应用程序都可以发布它的功能,其他的应用程序可能会利制氧机,家庭制氧机 用到这些功能(需遵守框架提供的安全约束)。依靠同样的机制,组件可以被用户所取代。 底层的所有的应用程序是一组服务和子系统,包括: 一组丰富并且可扩展的 view,这组 view 可以被用来构建一个应用程序,包括列表, 表格,文本框,按钮,甚至可嵌入的 Web 浏览器。 一组 Content Providers ,可以使应用程序访问其它应用程序的数据(比如通讯录), 或者共享自己的数据。 一个资源管理器(Resource Manager),提供对非代码资源的访问,比如本地化的 字符串,图形和布局文件。 一个通知管理(Notification Manager),可以使所有的应用程序在状态栏显示定制的 提醒。 一个 Activity 管理(Activity Manager) ,它管理的应用程序的生命周期,并且提供了 一个通用的后台切换栈。 库(Libraries) Android 包括了一套 C/C++ 库,这套库被 Android 系统的各个组件使用。通过 Android 的 应用框架,这些功能被开放给开发者。其中的一些核心库如下: 系统 C 库(System C library) - 一个继承自 BSD 的标准 C 系统实现(libc ),被调整 成面向基于 linux 的嵌入式设备。 媒体库(Media Libraries) - 基于 PacketVideo 的的 OpenCore;该库支持回放和录制 许多流行的音频和视频格式,以及静态图像文件,包括 MPEG4,H.264 ,MP3 ,AAC ,AMR ,JPG 和 PNG 格式。 Surface 管理器(Surface Manager) - 管理显示子系统,并能无缝地组合多个应用的 2D 和 3D 图像层。 LibWebCore - 一个流行的 Web 浏览器引擎,它对 Android 浏览器和嵌入式 Web 视图具有良好的支持。 SGL - 底层的 2D 图形引擎。 FreeType - 位图和矢量字体渲染。 SQLite - 所有的应用程序使用并且强大而轻量级的关系型数据库引擎。 运行时环境(Android Runtime) Android 包括一个核心库的集合,她们提供了 Java 编程语言的核心库中的绝大多数功能。制氧机,家庭制氧机 每一个 Android 应用都在她自己的进程中运行,该进程也属于某个 Dalvik 虚拟机的实例。 Dalvik 被设计成能让设备高效地运行多个虚拟机。 Dalvik 虚拟机执行的是.dex 结尾的 Dalvik 可执行文件格式,该格式被优化为最小内存使用。虚拟机是基于寄存器的,并且运 行那些 Java 编程语言所编译的类,这些类被内置的 dx 工具转换为.dex 格式。 Dalvik 虚拟机依赖 Linux 内核来提供底层的功能,比如线程和低级内存管理。 Linux 内核(Linux Kernel) Android 依赖 Linux 2.6 来提供核心系统服务,比如安全、存储管理、进程管理、网络栈和 驱动模型。该内核同时扮演着介于硬件和软件栈的其余部分之间的一个抽象层。