第1章走进Android世界
1.1 Android系统的优势
1.1.1 开源
1.1.2强大的开发团队的支持
1.1.3开发人员的支持
1.2 Android系统架构介绍
1.2.1底层操作系统层(Linux内核层)
1.2.2库(Libraries)和运行环境(Runtime)
1.2.3应用程序框架(Application Framework)
1.2.4顶层应用程序(Application)
1.3核心组件
1.3.1 Activity的界面表现
1.3.2 Intent和IntentFilters界面切换
1.3.3 Service服务
1.3.4用Broadcast IntentReceiver广播
1.3.5用Content Provider存储
1.4进程和线程
1.4.1什么是进程
1.4.2什么是线程
1.5获取Android 4.3源码
1.5.1在Linux系统中获取Android源码
1.5.2在Windows平台上获取Android源码
1.6 Android源码结构分析
1.6.1 Android源码的目录结构
1.6.2应用程序
1.6.3应用程序框架
1.6.4系统服务
1.6.5系统程序库
1.6.6系统运行库
1.6.7硬件抽象层
1.7编译Android源码
1.7.1搭建编译环境
1.7.2开始编译
1.7.3在模拟器中运行
1.7.4编译源码生成SDK
第2章硬件抽象层详解
2.1 什么是HAL层
2.1.1 为什么把对硬件的支持划分为两层来实现
2.1.2 HAL层的位置结构
2.2 分析HAL Module架构
2.2.1 hw_module_t
2.2.2 hw_module_methods_t
2.2.3 hw_device_t
2.3分析文件hardware.C
2.3.1 函数hw get module
2.3.2数组variant keys
2.3.3载入相应的库
2.3.4打开相应库并获得hw_module_t结构体
2.4分析硬件抽象层的加载过程
2.5分析硬件访问服务
2.5.1定义硬件访问服务接口
2.5.2实现硬件访问服务
2.6分析mokoid工程
2.6.1 直接调用Service方法实现
2.6.2通过Manager调用Service实现
2.7分析HAL层的具体实现(以Sensor系统为例)
2.7.1 传感器系统的基础知识
2.7.2 HAL层的Sensor代码
……
第3章分析JNl(Java本地接口)层
第4章Android内存系统分析
第5章Android虚拟机系统详解
第6章IPC通信机制详解
第7章Zygote进程、System进程和
应用程序进程
第8章分析Activity组件
第9章Content Provider数据存储
第10章Broadcast(广播)系统详解
第11章多媒体系统详解
第12章电源管理系统详解
第13章输入系统驱动应用
第14章蓝牙系统详解
第15章网络系统详解