名称 | 功能描述 |
---|---|
Activity Manager(活动管理器) | 管理各个程序生命周期,以及常用的导航回退功能 |
Location Manager(位置管理器) | 提供定位服务 |
Package Manager(包管理器) | 管理所有安装在Android系统上的应用 |
Notification Manager(通知管理器) | 使得应用程序可以在状态栏中显示自定义的提示信息 |
Resource Manager(资源管理器) | 提供应用程序使用的各种非代码资源,如:视频图片、布局、颜色文件等。 |
Telephone Manager(电话管理器) | 管理所有移动设备功能 |
Windows Manager(窗口管理器) | 管理所有开启的窗口程序 |
Content Provide(内容提供器) | 使不同应用之间可以共享数据 |
View System(视图系统) | 构成应用程序的基本条件 |
名称 | 功能描述 |
---|---|
OpenGL ES | 3D绘图库 |
LibC | 标准C系统函数库,专门为嵌入式Linux系统定制 |
Media Framework | 多媒体库,支持常用的音频,视频格式录制和回放 |
SQLite | 轻型的关系型数据库 |
SGL | 底层的2D图形渲染 |
SSL | 数据传输安全协议(加密),https就是添加了SSL |
FreeType | 字体引擎 |
应用框架层是系统的核心部分,一方面向上提供接口给应用层调用,另一方面向下与C/C++程序库及硬件抽象层等进行衔接。应用框架层的主要实现代码在 frameworks目录下面。
系统运行库层(Native)中的 C/C++程序库的类型繁多,功能强大,C/C++程序库并不完全在一个目录中。部分目录如下:
init 进程是 Android 系统中用户空间的第一个进程,进程号为 1,是 Android 系统启动流程中一个关键的步骤,作为第一个进程,它被赋予了很多极其重要的工作职责,比如创建 Zygote(孵化器)和属性服务等。init 进程是由多个源文件共同组成的,这些文件位于源码目录 system/core/init 中。
init.rc 是一个非常重要的配置文件,它是由 Android 初始化语言(Android Init Language)编写的脚本,这种语言主要包含 5 种类型语句:Action、Command、Service、Option 和 Import。
属性服务
Windows 平台上有一个注册表管理器,注册表的内容采用键值对的形式来记录用户、软件的一些使用信息。即使系统或者软件重启,其还是能够根据之前注册表中的记录,进行相应的初始化工作。Android 也提供了一个类似的机制,叫作属性服务。init 进程启动时会启动属性服务,并为其分配内存,用来存储这些属性,如果需要这些属性直接读取就可以了。