xx资源网(xxURLs.com)
发布资源

《深入理解Android:卷III》电子书PDF下载

s28282308.jpg 内容简介 《深入理解Android(卷3)》是Android经典畅销书系(对Android系统源代码的分析最为系统和细致)“深入理解Android”系列Framework卷的第III卷,从源代码的角度,对Android系统的Audio和UI两大功能的相关模块的实现原理和工作机制做了系统且详细的分析,填补了市场的空白。 《深入理解Android(卷3)》在逻辑上分为4个部分: Part 01(第1~2章):这是本书的基础部分,首先介绍了Android源码环境的搭建、编译和调试;然后讲解了Android进程间通信与任务调度的工具Binder与MessageQueue。这两项基础工作是深入研究Android前必须做的功课。 Part 02(第3章):详细分析了AudioService服务的实现,包括音量管理、音频外设管理、AudioFocus机制的实现等内容。 Part 03(第4~6章):这是本书的核心内容之一,详细分析了Android UI的通用实现,依次剖析了WindowManagerService、Android输入系统、Android控件系统的工作原理。 Part 04(第7~8章):主要分析了SystemUI和Android壁纸相关服务的实现,包括StatusBarManagerService与NotificationManagerService两个系统服务,以及WallpaperManagerService系统服务、动态壁纸与静态壁纸的工作原理等内容。 除此之外,在对海量的Android源代码进行分析的过程中,本书尽可能地对其中的精妙之处进行了分析和解读,目的是希望帮助读者领悟其中的优秀设计思想和方法。 作者简介 张大伟,资深Android系统开发工程师,现就职于索尼移动。从2011年开始从事Android开发,专注于Android系统源代码的研究、定制与维护工作,对Android的架构设计与运行原理有着深入的认识与实践经验,其中对UI相关模块、多媒体系统尤为擅长。曾主持了Android多窗口、多任务以及单手操作等系统定制的开发工作。此外对于其他开发平台如.NET亦有相当的经验。 目录 推荐序 前 言 第1章 开发环境部署1 1.1获取Android源代码1 1.2Android的编译3 1.3在IDE中导入Android源代码4 1.3.1将Android源代码导入Eclipse4 1.3.2将Android源代码导入SourceInsight5 1.4调试Android源代码6 1.4.1使用Eclipse调试Android Java源代码6 1.4.2使用gdb调试Android C/C++源代码8 1.5本章小结9 第2章深入理解Java Binder和MessageQueue10 2.1概述11 2.2Java层中的Binder分析11 2.2.1Binder架构总览11 2.2.2初始化Java层Binder框架13 2.2.3窥一斑,可见全豹乎16 2.2.4理解AIDL25 2.2.5Java层Binder架构总结28 2.3心系两界的MessageQueue28 2.3.1MessageQueue的创建29 2.3.2提取消息29 2.3.3nativePollOnce函数分析32 2.3.4MessageQueue总结42 2.4本章小结44 第3章 深入理解AudioService45 3.1概述46 3.2音量管理47 3.2.1音量键的处理流程47 3.2.2通用的音量设置函数setStreamVolume()61 3.2.3静音控制63 3.2.4音量控制小结67 3.3音频外设的管理68 3.3.1 WiredAccessoryObserver 设备状态的监控68 3.3.2AudioService的外设状态管理73 3.3.3音频外设管理小结78 3.4AudioFocus机制的实现78 3.4.1AudioFocus最简单的例子79 3.4.2AudioFocus实现原理简介81 3.4.3申请AudioFocus82 3.4.4释放AudioFocus86 3.4.5AudioFocus小结87 3.5AudioService的其他功能88 3.6本章小结89 第4章 深入理解WindowManager-Service90 4.1初识WindowManagerService91 4.1.1一个从命令行启动的动画窗口91 4.1.2WMS的构成99 4.1.3初识WMS的小结103 4.2WMS的窗口管理结构104 4.2.1理解WindowToken107 4.2.2理解WindowState111 4.2.3理解DisplayContent112 4.3理解窗口的显示次序112 4.3.1主序、子序和窗口类型112 4.3.2通过主序与子序确定窗口的次序114 4.3.3更新显示次序到Surface119 4.3.4关于显示次序的小结119 4.4窗口的布局119 4.4.1从relayoutWindow()开始120 4.4.2布局操作的外围代码分析124 4.4.3初探performLayoutAndPlace-SurfacesLockedInner()127 4.4.4布局的前期处理128 4.4.5布局DisplayContent130 4.4.6布局的最终阶段150 4.5WMS的动画系统150 4.5.1Android动画原理简介151 4.5.2WMS的动画系统框架155 4.5.3WindowAnimator分析156 4.5.4深入理解窗口动画160 4.5.5交替运行的布局系统与动画系统173 4.5.6动画系统总结174 4.6本章小结174 第5章 深入理解Android输入系统176 5.1初识Android输入系统177 5.1.1getevent与sendevent工具178 5.1.2Android输入系统简介179 5.1.3IMS的构成181 5.2原始事件的读取与加工185 5.2.1基础知识:INotify与Epoll186 5.2.2 InputReader的总体流程189 5.2.3 深入理解EventHub191 5.2.4 深入理解InputReader205 5.2.5原始事件的读取与加工总结225 5.3输入事件的派发225 5.3.1通用事件派发流程226 5.3.2按键事件的派发237 5.3.3DispatcherPolicy与InputFilter247 5.3.4输入事件的派发总结250 5.4输入事件的发送、接收与反馈250 5.4.1深入理解InputChannel251 5.4.2连接InputDispatcher和窗口252 5.4.3事件的发送260 5.4.4事件的接收263 5.4.5事件的反馈与发送循环264 5.4.6输入事件的发送、接收与反馈总结267 5.5关于输入系统的其他重要话题267 5.5.1输入事件ANR的产生267 5.5.2 焦点窗口的确定270 5.5.3以软件方式模拟用户操作273 5.6本章小结273 ...
资源链接
《深入理解Android:卷III》电子书PDF下载: http://pan.ishare1.cn/file/2973105-431599010
标签

爱分享电子书PDFAndroid移动开发深入理解Android

发布日期

2020-07-03

擦亮日期

2020-10-26

关闭