转载请注明本文来自:编程艺术家Poechant的CSDN博客 http://blog.csdn.net/poechant
1、Android Architecture Overview
2、四层结构
应用层(Application Level),应用框架层(Application Frameworks),系统运行库层(Libraries and Android Runtime Level)和Linux内核层(Linux Kernel Level)。
(1)应用层
应用层包含众多有应用开发者开发的应用(这句话好绕啊⋯⋯),而且Google在开发Android时,也已经在应用层绑定了一些核心应用,比如Email客户端、SMS短消息程序、日历、地图、浏览器、联系人、电话、通话记录等。
(2)应用框架层
该层就是应用开发者所必须了解的开发时所需要使用的API。基于该层的应用开发,是相当容易的,开发者可以更多地将精力用在如何做好应用软件身上。应用框架层所提供的组件很多,包括活动管理器(Avtivity Manager)、窗口管理器(Window Manager)、内容提供器(Content Providers)、视图系统(View System)、包管理器(Package Manager)。
(3)系统运行库层
该层,是一些C/C++库,来提供底层的支持。主要包括Bionic系统C库(C语言标准库,系统最底层的库)、多媒体库(MediaFramework)、SGL(2D图形引擎库)、SSL(位于TCP/IP协议与各种应用层协议之间,提供数据通信支持)、OpenGL ES 1.0(3D效果支持)、SQLite(关系数据库)、Webkit(Web浏览器引擎)、FreeType(位图bitmap及矢量图vector)。
(4)Linux内核层
Android的Linux内核层是基于LInux Kernel 2.6版本。Linux内核层,主要是作为硬件和软件栈之间的抽象层。在软件栈视角看,Linux内核就是“硬件”。内核层提供如下一些驱动:显示驱动(Display Driver)、键盘驱动(Keyboard Driver)、Flash内存驱动(Flash Memory Driver)、照相机驱动(Camera Driver)、音频驱动(Audio Driver)、蓝牙驱动(Bluetooth Driver,基于IEEE 802.15.1)、WiFi驱动、Binder IPC驱动(Android的一个特殊驱动程序,具有单独的设备节点,提供进程间通信)、Power Management(电源管理)。
转载请注明本文来自:编程艺术家Poechant的CSDN博客 http://blog.csdn.net/poechant