Android开发权威指南(第二版)
上QQ阅读APP看书,第一时间看更新

1.4 Android的系统架构

通过前面的介绍,我们对Android的特点已经有了一个初步的了解。本节将介绍Android的系统构架。图1-9所示为从技术层面描述了Android系统架构中各层的关系。

 

▲图1-9 Android系统架构中的层次关系

从图1-9所示可以看出Android系统架构分为4层,从高到低分别是应用层、应用框架层、系统运行库层和Linux内核层。下面将对这4层进行简单的介绍。

应用层。该层由运行在Dalvik虚拟机(Google公司为Android专门设计的基于寄存器的Java虚拟机,运行Java程序的速度比JVM更快)上的应用程序(主要由Java语言编写)组成。例如,日历、地图、浏览器、联系人管理。

应用框架层。该层主要由View、通知管理器(Notification Manager)、活动管理器(Activity Manager)等由开发人员直接调用的API组成(这些API主要也由Java语言编写)。

系统运行库层。Java本身是不能直接访问硬件的。要想让Java访问硬件,必须使用NDK才可以。NDK是一些由C/C++语言编写的库(主要是*.so文件)。这些程序也是该层的主要组成部分。该层主要包括C语言标准库、多媒体库、OpenGL ES、SQLite、Webkit、Dalvik虚拟机等。也就是说,该层是对应用框架层提供支持的层。

Linux内核层。该层主要包括驱动、内存管理、进程管理、网络协议栈等组件。目前Android 4.1的Linux内核版本是Linux 3.0.31。