一.应用程序层:此层为Application层,包括邮件客户端、SMS程序、日历、地图、浏览器、联系人和其他设置。
全部是由java编写
二.应用程序框架层:Application Framework层,开发者可以完全的使用全部的框架API,所有的应用程序其实是
一组服务和系统:
- 活动管理器(
ActivityManager
)——管理应用程序生命周期,提供通用的导航回退功能 - 窗口管理层(Windows Manager)——管理所有的窗口程序
- 内容提供者(Content Providers)——使应用程序能访问其他应用程序(如通讯录)的数据,或共享自己的数据
- 视图(View)——丰富的、可扩展的视图集合,可用于构建一个应用程序。包括包括列表、网格、文本框、按钮,甚至是内嵌的网页浏览器
- 通知管理器(
NotificationManager
)——使所有的应用程序能够在状态栏显示自定义警告 - 包管理(Package Manager)——系统内程序管理
- 电话管理器(Telephone Manager)——管理所有移动设备
- 资源管理器(Resource Manager)——提供访问非代码资源,如本地化字符串、图形和布局文件
- 位置管理器(Location Manager)——提供位置服务
- XMPP服务(XMPP Service)——提供Google Talk服务
三.系统运行库:Libraries层,包含一个C/C++库,供Android系统的各个组件使用。
四.Linux系统内核层:
Android基于Linux 2.6提供核心系统服务,例如:安全、内存管理、进程管理、网络堆栈、驱动模型。Linux Kernel也作为硬件和软件之间的抽象层,它隐藏具体硬件细节而为上层提供统一的服务。