深入学习Android的最佳方式是阅读其源代码,从源代码中能总结出其设计和实现原理。Android的源代码浩如烟海。“Android的设计与实现”系列丛书围绕Android系统的运行机制,循序渐进地对各个层次的核心模块进行了十分深入的分析。
《Android的设计与实现(卷Ⅰ移动开发)》是该系列的卷Ⅰ,其主题是启动和通信两部分内容。从启动的视角,分析了Android运行环境、Package Manager、Activity Manager等核心模块;从通信的视角,分析了Binder和消息机制等进程和线程间通信的核心模块。本书由资深Android内核专家杨云君亲自执笔
《Android的设计与实现(卷Ⅰ移动开发)》是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系统架构师,以及负责对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启动过程的底层实现
第4章 Android 启动过程的上层实现
第三部分 Binder篇
第5章 Binder在Native框架层的实现
第6章 Binder在Java框架层的实现
第四部分 消息通信篇
第7章 线程消息通信与异步处理
第五部分 Package Manager篇
第8章 Package Manager 的机制与实现
第9章 Apk的安装过程
第六部分 Activity Manager篇
第10章 Activity Manager的机制与实现
第11章 应用程序Activity的启动和调度
第12章 Activity manager进程管理