基于Android系统的手机安全卫士毕业设计 下载本文

(lists),网格(grids),文本框(text boxes),按钮(buttons), 甚至可嵌入的web浏览器。

内容提供器(Content Providers)使得应用程序可以访问另一个应用程序的数据(如联系人数据库), 或者共享它们自己的数据

资源管理器(Resource Manager)提供 非代码资源的访问,如本地字符串,图形,和布局文件( layout files )。

通知管理器 (Notification Manager) 使得应用程序可以在状态栏中显示自定义的提示信息。

活动管理器( Activity Manager) 用来管理应用程序生命周期并提供常用的导航回退功能。

2.2.2.系统运行库

2.2.2.1程序库

Android 包含一些C/C++库,这些库能被Android系统中不同的组件使用。

它们通过 Android 应用程序框架为开发者提供服务。以下是一些核心库: 系统 C 库 - 一个从 BSD 继承来的标准 C 系统函数库( libc ), 它是专门为基于 embedded linux 的设备定制的。

媒体库 - 基于 PacketVideo OpenCORE;该库支持多种常用的音频、视频格式回放和录制,同时支持静态图像文件。编码格式包括MPEG4, H.264, MP3, AAC, AMR, JPG, PNG 。

Surface Manager - 对显示子系统的管理,并且为多个应用程序提 供了2D和3D图层的无缝融合。

LibWebCore - 一个最新的web浏览器引擎用,支持Android浏览器和一个可嵌入的web视图。

SGL - 底层的2D图形引擎

3D libraries - 基于OpenGL ES 1.0 APIs实现;该库可以使用硬件 3D加速(如果可用)或者使用高度优化的3D软加速。

FreeType -位图(bitmap)和矢量(vector)字体显示。

7

SQLite - 一个对于所有应用程序可用,功能强劲的轻型关系型数据库引擎。

2.2.2.2运行库

Android 包括了一个核心库,该核心库提供了JAVA编程语言核心库的大多数功能。每一个Android应用程序都在它自己的进程中运行,都拥有一个独立的Dalvik虚拟机实例。Dalvik被设计成一个设备可以同时高效地运行多个虚拟系统。 Dalvik虚拟机执行(.dex)的Dalvik可执行文件,该格式文件针对小内存使用做了优化。同时虚拟机是基于寄存器的,所有的类都经由JAVA编译器编译,然后通过SDK中 的 \工具转化成.dex格式由虚拟机执行。Dalvik虚拟机依赖于linux内核的一些功能,比如线程机制和底层内存管理机制。

2.2.3.Linux内核

Android 的核心系统服务依赖于 Linux 2.6 内核,如安全性、内存管理、进程管理、网络协议和驱动模型。Linux 内核也同时作为硬件和软件栈之间的抽象层。

2.3 Android应用的构成和工作机制

Android应用程序来说,是由Activity、Intent Receiver、Service、ContentProvider四部分组成,但并不是每一个Android应用程序都必须由这四部分组成。在应用程序中使用时,需要在配置文件Android应用程序中所必需的,用于定义应用程序的组件、组件的功能以及必要条件等。Android应用的构成和工作流程图如下:

图2.2 Android的构成和工作流程

8

2.4 Android与其他手机操作系统的比较

我们主要从手机操作系统的Portablity、Reliability、Connectivity、Product Diversity、

Open Platform、Kernal Size、Standards、Security和Special Features这九个方面进行了比较,具体的比较结果如下表:

对上表比较的九项每一项以1分、0.5分、0分三个级别来进行了评分,综合各项评分,最好得到的评分结果是Android 8.5分、Windows mobile 5.5分、Symbian6.5分。Android基于开源的Linux以及标准的跨平台的编程语言Java,而且源代码开放,并且免费允许所有厂商和个人在其基础上进行开发,其开源和免费政策将赢得不少手机制造商的支持。而且在其平台上集成了不少优秀的开源工程,如Webkit、OpenGL等,相信在不久,将会有更多的优秀工程加入到Android

9

中来。相比其他手机操作系统过于封闭的特性来说,Android在手机操作系统领域将会占有很大的优势,其功能也将会越来越强大。

2.5 本章小结

本章对Android平台的特征、架构以及Android应用的构成和工作机制进行了详细的分析。对于Android应用程序来说,主要由Activity、 Service、 Intent Receiver和Content Provider四部分组成,但并不是对于每一个应用程序,这四部分都是必须的。Activity是应用程序中最重要的一种构成块,我们对其进行了详细的分析,包括Activity的生命周期以及Activity之间的切换。最后对Android与其它的手机操作系统从九个方面进行了比较,说明了Android的优势。

10