Android的设计与实现(卷1)
作 者: 杨云君 著
出版时间: 2013
内容简介
《Android的设计与实现(卷1)》是Android应用开发工程师和Android系统工程师进阶修炼的必读之作。它由资深Android内核专家亲自执笔,从源代码角度,系统、深入、透彻剖析Android系统框架层(Framework)的设计思想和实现原理,为Android应用工程师和系统工程师解决实际工作中的各种难题提供了原理性的指导。为了降低读者的阅读成本,本书使用了大量简单的UML类图和序列图来展示类的层次结构和方法的调用流程,使读者能迅速读完本书并领会其精髓!“Android的设计与实现”系列丛书主要围绕Android系统的四层结构展开,通过源代码来分析各层的设计思想与实现原理,卷I则主要是针对Framework(框架层)的。全书共12章,分为六个部分:基础篇(第1~2章)详细讲解了Android的体系结构、源代码阅读和调试环境的搭建,以及整个框架的基础;启动篇(第3~4章)深入分析了Android启动过程的机制和实现原理,能帮助读者全面理解框架层系统服务的运行基础;Binder篇(第5~6章)着重分析了Binder在Native框架层和Java框架层的机制和实现,能让读者深入理解进程间的通信模型;消息通信篇(第7章)重点分析了Android的消息驱动和异步处理机制,能让读者深入理解线程间的通信模型;Package Manager篇(第8~9章)主要讲解了Package Manager的机制与实现,以及APK的安装方法与过程;Activity Manager篇(第10~12章)深入阐述了ActivityManagerService的运行机制、应用程序和进程的启动流程,以及进程管理机制。本书适合中高级的Android应用开发工程师、Android系统开发工程师、Android系统架构师,以及负责对Android系统进行调试和优化的工程师们阅读。
目录
前言
第一部分 基础篇
第1章 Android体系结构及源代码阅读环境搭建
1.1 Android发展过程
1.2 Android体系结构
1.2.1 静态视角的体系结构
1.2.2 动态视角的体系结构
1.3 Android源码下载和编译
1.3.1 搭建开发环境
1.3.2 下载Android上层系统源代码
1.3.3 下载指定模块源码
1.3.4 下载 Android Linux Kernel源码
1.3.5 编译Android上层系统源码
1.3.6 编译指定模块源码
1.4 Android源码结构
1.5 Android源码开发工具的配置和使用
1.5.1 配置Android SDK
1.5.2 用Eclipse开发和调试源代码
1.5.3 用Source Insight阅读源代码
1.6 NDK开发环境配置
1.7 本章小结
第2章 框架基础JNI
2.1 JNI在Android系统中所处的位置
2.2 JNI框架层实例分析
2.2.1 Log系统Java层分析
2.2.2 Log系统的JNI层
2.2.3 Log系统的JNI方法注册
2.3 JNI总管:JNIEnv
2.4 在Java中调用JNI实现方法
2.4.1 Java数据类型与JNI数据类型转换
2.4.2 JNI方法命名规则
2.4.3 JNI方法签名规则
2.5 JNI操作Java对象
2.5.1 访问Java对象
2.5.2 操作成员变量(域)和方法
2.5.3 全局引用、弱全局引用和局部引用
2.6 JNI异常处理
2.7 JNI应用层实例分析
2.7.1 Java层分析
2.7.2 JNI层代码和异常处理
2.8 本章小结
第二部分 启动篇
第3章 Android启动过程的底层实现
3.1 Android正常模式启动流程
3.2 Kernel启动过程
3.2.1 内核引导阶段
3.2.2 内核启动阶段
3.3 init进程的执行过程
3.4 init.rc文件解析过程
3.4.1 Android初始化语言
3.4.2 init.rc的内容
3.4.3 解析配置文件
3.4.4 解析Service
3.4.5 解析Action
3.5 触发并启动Action和Service
3.5.1 触发Action
3.5.2 执行Action
3.5.3 启动Service
3.5.4 init对属性服务的处理