新書推薦:
《
铝合金先进成型技术
》
售價:NT$
1214.0
《
英雄之旅:把人生活成一个好故事
》
售價:NT$
398.0
《
分析性一体的涌现:进入精神分析的核心
》
售價:NT$
556.0
《
火枪与账簿:早期经济全球化时代的中国与东亚世界
》
售價:NT$
352.0
《
《全面与进步跨太平洋伙伴关系协定》国有企业条款研究
》
售價:NT$
449.0
《
银行业架构网络BIAN(全球数字化时代金融服务业框架)(数字化转型与创新管理丛书)
》
售價:NT$
449.0
《
金托邦:江湖中的沉重正义
》
售價:NT$
275.0
《
易经今解:释疑·解惑·见微
》
售價:NT$
403.0
|
編輯推薦: |
基于Google发布的Jelly
Bean原始代码,讲述Android系统的内部静态结构关系和内部运行机制,为你呈现原汁原味的Android代码分析大餐!
|
內容簡介: |
本书以Android Jelly
Bean(4.1)的代码为蓝本,对Android的部分关键代码进行了注释分析,并辅以大量插图,讲述了Android大部分子系统中的模块和类的静态结构,让读者对Android系统的内部静态结构有着“类”粒度这一层级上的认识和了解。同时,也对关键类和函数的代码调用流程、运行时刻所位于的进程和线程上下文等动态运行场景进行了分析讲述,让读者深刻理解Android系统内部是如何运行的。本书直接对Source
Insight进行截图,保留了代码的原始行号、英文注释等信息并进行了高亮显示,方便读者阅读;代码中同时添加了作者所做的中文注释说明。
|
關於作者: |
杨长刚,2005年春毕业于西南交通大学计算机应用技术专业,获硕士学位;后进入手机行业从事Linux手机软件开发工作。目前在一家欧美企业从事Android方面的技术工作。
作者官方博客:http:www.redwolf-blog.com
|
目錄:
|
第1章 智能指针
1.1 智能指针概述
1.2 引用计数基类RefBase
1.3 轻量级引用计数LightRefBase
1.4 强指针
1.4.1 强指针变量的初始化与生命周期
1.4.2 赋值操作与引用计数变化
1.5 弱指针
第2章 消息队列与线程处理
2.1 消息队列处理模型的设计
2.2 消息队列与线程处理的Java实现
2.2.1 ThreadRunnable
2.2.2 Message
2.2.3 MessageQueue概述
2.2.4 Handler
2.2.5 Looper
2.2.6 再论Handler
2.2.7 对同步消息的支持
2.3 native层的Looper与消息队列处理
2.3.1 Looper中的睡眠等待与唤醒机制
2.3.2 Looper对文件描述符的监控与处理
2.3.3 Looper中的消息队列处理机制
2.3.4 Looper与线程执行上下文
第3章 Binder IPC及其应用
3.1 Binder IPC
3.1.1 Binder IPC与系统服务
3.1.2 Binder类结构与调用关系
3.1.3 模板函数interface_cast的背后
3.1.4 例子AudioPolicyService
3.2 Java层对Binder的封装
3.2.1 例子IMediaPlaybackService
3.2.2 例子PhoneStateListener
3.3 大内存块的跨进程共享
3.3.1 概述
3.3.2 调用接口
3.3.3 设备空间的映射
3.3.4 Server侧的处理
第4章 HAL硬件抽象层
4.1 HAL概述
4.2 硬件模块库的通用写法
4.3 硬件模块库的装载与解析
4.4 例子Lights
4.5 例子Camera
4.6 例子Power和Vibrator
第5章 Android的启动过程
5.1 Android初始化语言及解析
5.1.1 Action
5.1.2 触发器trigger
5.1.3 命令Command
5.1.4 服务Service
5.1.5 .rc文件的解析
5.2 BootChart
5.3 ueventd守护进程
5.4 init进程的启动过程
5.5 init.rc文件中的服务进程
5.6 system_server进程
5.6.1 app_process程序
5.6.2 system_server进程
第6章 输入系统
6.1 输入系统概述
6.2 读线程
6.2.1 EventHub
6.2.2 InputReader
6.2.3 InputDevice
6.2.4 InputMapper
6.2.5 QueuedInputListener
6.3 分发线程
6.3.1 InputDispatcher
6.3.2 InputChannel
6.4 输入系统的开启
第7章 MassStorage
7.1 MassStorage概述
7.2 MountService
7.3 库libsysutils.so
7.3.1 SocketListener
7.3.2 FrameworkListener
7.3.3 NetlinkListener
7.4 守护进程vold
7.4.1 NetlinkManager
7.4.2 CommandListener
7.4.3 vold的main函数
第8章 Sensor
8.1 Sensor概述
8.2 SDK API概述
8.3 Sensor管理器
8.3.1 Sensor采样数据的获取与处理
8.3.2 SensorEventQueue
8.4 SensorService
8.4.1 逻辑传感器
8.4.2 物理传感器
8.4.3 Sensor HAL
第9章 RIL
9.1 RIL概述
9.2 rild守护进程
9.3 事件处理与分发线程
9.3.1 分发线程中的事件处理
9.3.2 RIL请求的接收与处理
9.3.3 RIL响应的回送
9.4 radiooptions工具程序
9.5 RILJ
9.5.1 RILJ概述
9.5.2 RILRequest的发送过程
9.5.3 Response的处理过程
第10章 com.android.phone进程
10.1 层次状态机StateMachine
10.2 GSMPhone
10.3 GsmCallTracker
10.3.1 GsmDataConnectionTracker
10.3.2 GsmServiceStateTracker
10.3.3 DefaultPhoneNotifier
10.3.4 其他
10.4 进程com.android.phone
第11章 Graphic
11.1 Graphic概述
11.2 Java层简介
11.2.1 SurfaceSession
11.2.2 Surface
11.2.3 SurfaceView
11.2.4 TextureView
11.3 JNI层简介
11.4 SKIA库简介
11.5 库libgui.so
11.5.1 概述
11.5.2 ComposerService
11.5.3 共享控制块surface_flinger_cblk_t
11.5.4 ISurfaceComposer
11.5.5 ScreenshotClient
11.5.6 SurfaceComposerClient
11.5.7 Surface
11.5.8 SurfaceControl
11.5.9 绘图操作的前后过程
11.5.10 SurfaceTexture Client
11.6 SurfaceFlinger进程
11.6.1 图层
11.6.2 DisplayHardware简介
11.6.3 HWComposer简介
11.6.4 VSync
11.7 库libui.so简介
11.7.1 GraphicBuffer
11.7.2 FramebufferNativeWindow
11.8 RenderScript简介
第12章 OpenGL ES软件层次栈
12.1 Android中的OpenGL ES简介
12.2 Android中OpenGL软件层次栈
12.3 包裹库与hook钩子
12.3.1 libGLESv1_CM.so包裹库
12.3.2 libGLESv2包裹库
12.3.3 libEGL包裹库
12.3.4 结构体egl_t和gl_hooks_t钩子
12.4 OpenGL实现库的加载和解析
12.4.1 加载和解析的发起
12.4.2 库装载器Loader
12.5 libGLES_android库和ETC1简介
第13章 Multimedia
13.1 Multimedia概述
13.2 API类简述
13.3 多媒体播放(playback)
13.3.1 播放流程
13.3.2 来自server侧的消息事件通知
13.4 多媒体录制(Recording)
13.5 元数据(MetaData)获取
13.6 Camera
13.6.1 Camera概述
13.6.2 CameraHardwareInterface与HAL层
13.7 Camera事件通知机制
第14章 Audio
14.1 Audio概述
14.2 Audio播放AudioTrack
14.2.1 共享控制块audio_track_cblk_t
14.2.2 数据的写入
14.2.3 事件的回送及处理
14.3 Auido录音Recording
14.3.1 录音的开始过程
14.3.2 录音的停止过程
14.4 AudioFlinger
14.4.1 AudioFlinger概述
14.4.2 Track相关类概述
14.4.3 AudioFlinger中的线程
14.5 音效Audio
|
|