2023年7月9日发(作者:)
《深⼊理解Android卷III》—Android书籍⽂章⽬录出版年: 2015-8-1简介:深⼊理解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源代码进⾏分析的过程中,本书尽可能地对其中的精妙之处进⾏了分析和解读,⽬的是希望帮助读者领悟其中的优秀设计思想和⽅法。第1章 开发环境部署11.1获取Android源代码11.2Android的编译31.3在IDE中导⼊Android源代码41.3.1将Android源代码导⼊Eclipse41.3.2将Android源代码导⼊SourceInsight51.4调试Android源代码61.4.1使⽤Eclipse调试Android Java源代码61.4.2使⽤gdb调试Android C/C++源代码81.5本章⼩结9第2章深⼊理解Java Binder和MessageQueue102.1概述112.2Java层中的Binder分析112.2.1Binder架构总览112.2.2初始化Java层Binder框架132.2.3窥⼀斑,可见全豹乎162.2.4理解AIDL252.2.5Java层Binder架构总结282.3⼼系两界的MessageQueue282.3.1MessageQueue的创建292.3.2提取消息292.3.3nativePollOnce函数分析322.3.4MessageQueue总结422.4本章⼩结44第3章 深⼊理解AudioService453.1概述463.2⾳量管理473.2.1⾳量键的处理流程473.2.2通⽤的⾳量设置函数setStreamVolume()613.2.3静⾳控制633.2.4⾳量控制⼩结673.3⾳频外设的管理683.3.1 WiredAccessoryObserver 设备状态的监控683.3.2AudioService的外设状态管理733.3.3⾳频外设管理⼩结783.4AudioFocus机制的实现783.4.1AudioFocus最简单的例⼦793.4.2AudioFocus实现原理简介813.4.3申请AudioFocus823.4.4释放AudioFocus863.4.5AudioFocus⼩结873.5AudioService的其他功能883.6本章⼩结89第4章 深⼊理解WindowManager-Service904.1初识WindowManagerService914.1.1⼀个从命令⾏启动的动画窗⼝914.1.2WMS的构成994.1.3初识WMS的⼩结1034.2WMS的窗⼝管理结构1044.2.1理解WindowToken1074.2.2理解WindowState1114.2.3理解DisplayContent1124.3理解窗⼝的显⽰次序1124.3.1主序、⼦序和窗⼝类型1124.3.2通过主序与⼦序确定窗⼝的次序1144.3.3更新显⽰次序到Surface1194.3.4关于显⽰次序的⼩结1194.4窗⼝的布局1194.4.1从relayoutWindow()开始1204.4.2布局操作的外围代码分析1244.4.3初探performLayoutAndPlace-SurfacesLockedInner()1274.4.4布局的前期处理1284.4.5布局DisplayContent1304.4.6布局的最终阶段1504.5WMS的动画系统1504.5.1Android动画原理简介1514.5.2WMS的动画系统框架1554.5.3WindowAnimator分析1564.5.4深⼊理解窗⼝动画1604.5.5交替运⾏的布局系统与动画系统1734.5.6动画系统总结1744.6本章⼩结174第5章 深⼊理解Android输⼊系统1765.1初识Android输⼊系统1775.1.1getevent与sendevent⼯具1785.1.2Android输⼊系统简介1795.1.3IMS的构成1815.2原始事件的读取与加⼯1855.2.1基础知识:INotify与Epoll1865.2.2 InputReader的总体流程1895.2.3 深⼊理解EventHub1915.2.4 深⼊理解InputReader2055.2.5原始事件的读取与加⼯总结2255.3输⼊事件的派发2255.3.1通⽤事件派发流程2265.3.2按键事件的派发2375.3.3DispatcherPolicy与InputFilter2475.3.4输⼊事件的派发总结2505.4输⼊事件的发送、接收与反馈2505.4.1深⼊理解InputChannel2515.4.2连接InputDispatcher和窗⼝2525.4.3事件的发送2605.4.4事件的接收2635.4.5事件的反馈与发送循环2645.4.6输⼊事件的发送、接收与反馈总结2675.5关于输⼊系统的其他重要话题2675.5.1输⼊事件ANR的产⽣2675.5.2 焦点窗⼝的确定2705.5.3以软件⽅式模拟⽤户操作2735.6本章⼩结273第6章 深⼊理解控件系统2756.1 初识Android的控件系统2766.1.1 另⼀种创建窗⼝的⽅法2776.1.2 控件系统的组成2786.2 深⼊理解WindowManager2796.2.1 WindowManager的创建与体系结构2796.2.2 通过WindowManagerGlobal添加窗⼝2826.2.3 更新窗⼝的布局2846.2.4 删除窗⼝2856.2.5 WindowManager的总结2856.3 深⼊理解ViewRootImpl2866.3.1 ViewRootImpl的创建及其重要的成员2866.3.2 控件系统的⼼跳:performTraversals()2906.3.3 ViewRootImpl总结3176.4 深⼊理解控件树的绘制3176.4.1 理解Canvas3176.4.2 date()与脏区域3206.4.3 开始绘制3216.4.4 软件绘制的原理3236.4.5 硬件加速绘制的原理3346.4.6 使⽤绘图缓存3466.4.7 控件动画3566.4.8 绘制控件树的总结3606.5 深⼊理解输⼊事件的派发3616.5.1 触摸模式3616.5.2 控件焦点3636.5.3 输⼊事件派发的综述3766.5.4 按键事件的派发3816.5.5 触摸事件的派发3886.5.6 输⼊事件派发的总结4046.6 Activity与控件系统4056.6.1 理解PhoneWindow4056.6.2 Activity窗⼝的创建与显⽰4146.7 本章⼩结416第7章 深⼊理解SystemUI4187.1 初识SystemUI4197.1.1 SystemUIService的启动4207.1.2 状态栏与导航栏的创建4227.1.3 理解IStatusBarService4257.1.4 SystemUI的体系结构4277.2 深⼊理解状态栏4287.2.1 状态栏窗⼝的创建与控件树结构4297.2.2 通知信息的管理与显⽰4347.2.3 系统状态图标区的管理与显⽰4487.2.4 状态栏总结4527.3 深⼊理解导航栏4527.3.1 导航栏的创建4537.3.2 虚拟按键的⼯作原理4597.3.3 SearchPanel4627.3.4 关于导航栏的其他话题4657.3.5 导航栏总结4717.4 禁⽤状态栏与导航栏的功能4727.4.1 如何禁⽤状态栏与导航栏的功能4727.4.2 StatusBarManagerService对禁⽤标记的维护4737.4.3 状态栏与导航栏对禁⽤标记的响应4747.5 理解SystemUIVisibility4757.5.1 SystemUIVisibility在系统中的漫游过程4767.5.2 SystemUIVisibility发挥作⽤4827.5.3 SystemUIVisibility总结4947.6 本章⼩结495第8章 深⼊理解Android壁纸4968.1 初识Android壁纸4978.2深⼊理解动态壁纸4988.2.1启动动态壁纸的⽅法4988.2.2壁纸服务的启动原理4988.2.3 理解UpdateSurface()⽅法5108.2.4 壁纸的销毁5158.2.5 理解Engine的回调5168.3 深⼊理解静态壁纸—ImageWallpaper5198.3.1 获取⽤作静态壁纸的位图5198.3.2 静态壁纸位图的设置5228.3.3 连接静态壁纸的设置与获取—WallpaperObserver5248.4 WMS对壁纸窗⼝的特殊处理5268.4.1 壁纸窗⼝Z序的确定5278.4.2 壁纸窗⼝的可见性5338.4.3 壁纸窗⼝的动画5358.4.4 壁纸窗⼝总结5388.5 本章⼩结539
发布者:admin,转转请注明出处:http://www.yc00.com/web/1688902226a182096.html
评论列表(0条)