深入理解Android系统
深入理解Android系统封面图

深入理解Android系统

张元亮, 编著

出版社:清华大学出版社

年代:2015

定价:85.0

书籍简介:

本书基于当前最新的Android 4.4.2系统,从获取源码和源码结构分析讲起,依次讲解了Android平台的源码结构和SDK解析,分析JNI、HAL层、内存系统、IPC通信机制、Binder对象和Java接口、ServiceManager和MessageQueue、init进程、三大进程系统、Dalvik VM、Activity组件、Broadcast(广播)系统、Content Provider等知识。书中几乎涵盖了Android源码中的主要内容,讲解方法通俗易懂、详细。

书籍目录:

第1章 获取并编译 Android源码 ................... 1

1.1 获取 Android源码 ..................................... 1

1.2 分析 Android源码结构 ............................. 6

1.3 分析源码中提供的接口 .......................... 17

1.4 编译源码 .................................................. 26

1.5 编译源码生成 SDK ................................. 30

第2章 分析 JNI .......................................... 35

2.1 JNI基础 ................................................... 35

2.2 分析 MediaScanner .................................. 38

2.3 分析 Camera系统的 JNI ......................... 54

2.4 Java与 JNI基本数据类型转换 ............... 60

2.5 JNIEnv接口 ............................................. 61

2.6 开发 JNI程序 .......................................... 62

第3章 内存系统架构详解............................ 66

3.1 分析 Android的进程通信机制 ............... 66

3.2 分析匿名共享内存子系统 ...................... 87

3.3 分析 C++访问接口层 ............................ 103

3.4 分析 Java访问接口层 ........................... 115

第 4章 硬件抽象层架构详解 ...................... 120

4.1 HAL基础 ............................................... 120

4.2 分析 HAL module架构 ......................... 123

4.3 分析文件 hardware.c .............................. 126

4.4 分析硬件抽象层的加载过程 ................ 128

4.5 分析硬件访问服务 ................................ 132

4.6 分析官方实例 ........................................ 134

4.7 HAL和系统移植 ................................... 144

4.8 开发自己的 HAL ................................... 150

第 5章 Binder通信机制详解 ..................... 155

5.1 分析 Binder驱动程序 ........................... 155

5.2 Binder封装库 ........................................ 179

5.3 初始化 Java层 Binder框架 .................. 188

5.4 实体对象 binder_node ........................... 190

5.5 本地对象 BBinder .................................. 194

5.6 引用对象 binder_ref ............................... 205

5.7 代理对象 BpBinder ................................ 208

第 6章 init启动进程详解 ........................... 213

6.1 什么是 init进程 ..................................... 213

6.2 入口函数 ................................................ 214

6.3 init配置文件 .......................................... 217

6.4 解析 Service ........................................... 223

6.5 解析 on ................................................... 230

6.6 init控制 Service ..................................... 233

6.7 启动属性服务 ........................................ 243

第 7章 Zygote进程详解 ............................ 253

7.1 Zygote基础 ............................................ 253

7.2 启动 Zygote ............................................ 254

第 8章 System进程详解 ........................... 271

8.1 启动前的准备 ........................................ 271

8.2 分析 SystemServer ................................. 272

8.3 第一个启动的 ServiceEntropyService .... 275

8.4 生成并管理日志文件 ............................ 278

8.5 分析 DiskStatsService ............................ 285

8.6 监测系统内部存储空间的状态 ............ 289

8.7 分析实现性能统计 ................................ 292

8.8 剪贴板服务 ............................................ 302

第 9章 应用程序进程详解.......................... 309

9.1 创建应用程序 ........................................ 309

9.2 启动线程池 ............................................ 320

9.3 创建信息循环 ........................................ 322

第 10章 ART机制架构详解 ....................... 324

10.1 分析 ART的启动过程 ........................ 324

10.2 进入 main()主函数 ............................... 357

10.3 查找目标类 .......................................... 358

10.4 类操作 .................................................. 368

10.5 实现托管操作 ...................................... 370

第 11章 Sensor传感器系统架构详解 ........ 376

11.1 Android传感器系统概述 .................... 376

11.2 Java层详解 .......................................... 377

11.3 Frameworks层详解 ............................. 383

11.4 JNI层详解 ........................................... 396

11.5 HAL层详解 ......................................... 425

第 12章 蓝牙系统架构详解 ....................... 435

12.1 短距离无线通信技术概览 .................. 435

12.2 蓝牙技术基础 ...................................... 437

12.3 蓝牙规范详解 ...................................... 440

12.4 低功耗蓝牙协议栈详解 ...................... 445

12.5 TI公司的低功耗蓝牙 .......................... 448

12.6 分析 Android系统中的蓝牙模块 ....... 456

12.7 分析蓝牙模块的源码 .......................... 458

12.8 Android系统的低功耗蓝牙协议栈 .... 459

第 13章 Android多媒体框架架构详解 ....... 498

13.1 Android多媒体系统介绍 .................... 498

13.2 OpenMax框架详解 ............................. 499

13.3 OpenCore框架详解 ............................. 512

13.4 StageFright框架详解 ........................... 532

第 14章 音频系统框架架构详解 ................ 554

14.1 硬件架构的发展趋势 .......................... 554

14.2 音频系统基础 ...................................... 557

14.3 音频系统的层次 .................................. 559

14.4 Audio系统的硬件抽象层 ................... 567

14.5 Kernel Driver实现 ............................... 575

14.6 实现编/解码过程 ................................. 582

第 15章 视频系统架构详解 ....................... 594

15.1 视频输出系统 ...................................... 594

15.2 MediaPlayer架构详解 ......................... 602

15.3 VideoView详解 ................................... 628

第 16章 WebKit系统架构详解 .................. 635

16.1 WebKit系统目录 ................................. 635

16.2 Java层的基本框架 .............................. 636

16.3 Java层的主要类 .................................. 637

16.4 数据载入器架构 .................................. 639

16.5 Java层对应的 C/C++类库 .................. 640

16.6 分析 WebKit的操作过程 .................... 642

16.7 WebViewCore详解 ............................. 645

第 17章 Android 5.0中的 WebView .......... 652

17.1 WebView架构基础 ............................. 652

17.2 WebView类简介 ................................. 654

17.3 WebViewProvider接口 ....................... 656

17.4 WebViewChromium详解 .................... 659

17.5 WebViewChromiumFactoryProvider 详解 ........ 660

17.6 AwContents架构 ................................. 663

17.7 实现 Mixed Content模式 .................... 666

17.8 引入第三方 Cookie .............................. 667

第 18章 Wi-Fi系统架构详解...................... 670

18.1 Wi-Fi系统基础 .................................... 670

18.2 Wi-Fi本地部分架构 ............................ 672

18.3 Wi-Fi JNI部分架构 ............................. 676

18.4 Java FrameWork部分的源码 .............. 677

18.5 Setting设置架构 .................................. 689

内容摘要:

本书内容共18章,循序渐进地分析了整个Android系统的基本架构知识,从获取源码开始讲起,依次讲解了Android系统介绍,包括获取并编译Android源码,分析JNI,内存系统架构详解,硬件抽象层架构详解,Binder通信机制详解,init启动进程详解,Zygote进程详解,System进程详解,应用程序进程详解,ART机制架构详解,Sensor传感器系统架构详解,蓝牙系统架构详解,Android多媒体框架架构详解,音频系统框架架构详解,视频系统架构详解,WebKit系统架构详解,Android 5.0中的WebView,Wi-Fi系统架构详解等内容。本书几乎涵盖了所有Android系统架构的主要核心内容,讲解方法通俗易懂并且详细,不但适合应用高手们学习,也特别便于初学者学习和理解。本书适合Android源码分析人员、Android系统架构师、Linux开发人员、Android物联网开发人员、Android爱好者、Android底层开发人员、Android驱动开发人员、Android应用开发人员、Android传感器开发人员、Android智能家居开发人员、Android可穿戴设备开发人员学习,也可以作为相关培训学校和大专院校相关专业的教学用书。

编辑推荐:

探索和品味Android大师们的内核设计艺术
·全面剖析进程/线程、内存管理、Binder机制、显示系统、多媒体管理、输入系统等核心知识在Android中的实现原理。
·源码分析+全真示例+图片解析=更易于理解的思维路径。
·由浅入深,由总体框架到细节实现,快速获取对Android系统的二次开发能力。
·教授精髓,精讲精炼。赠送源码,拿来就用。

书籍规格:

书籍详细信息
书名深入理解Android系统站内查询相似图书
9787302404392
如需购买下载《深入理解Android系统》pdf扫描版电子书或查询更多相关信息,请直接复制isbn,搜索即可全网搜索该ISBN
出版地北京出版单位清华大学出版社
版次1版印次1
定价(元)85.0语种简体中文
尺寸26 × 19装帧平装
页数印数 4000

书籍信息归属:

深入理解Android系统是清华大学出版社于2015.出版的中图分类号为 TN929.53 的主题关于 移动终端-应用程序-程序设计 的书籍。