首 页
手机版

android系统服务开发 pdf完整扫描版

android系统服务开发是一本不错的android系统开发书籍,通过本书可以了解系统进程间通信、通信(RIL)框架、电源管理等内容的相关细节,对致力于这方面开发的程序员来说大有裨益。本书由[韩]金大佑,朴宰永,文炳元编著,邸春红翻译,人民邮电出版社出版。全书详细的分析了Android提供的硬件控制机制和测试平台源代码和日志作为范例,并且还介绍了目前尚未普及的Android平台的硬件控制基本原理及实际框架的操作,能使观看者最大程度的了解Androidd的系统服务开发,从而达到学习,提升自己的目的,能够适用于初学者以及android开发高手。

内容简介

《Android系统服务开发》分析了安卓提供的硬件控制机制。编写团队目前均从事相关工作,直接对平台源代码及日志进行分析及测试,介绍了目前尚未普及的安卓平台的硬件控制基本原理及实际框架的操作。

与安卓刚出现时相比,安卓开发人员现在已有了大幅增长,人们也可轻松搜索到相关资料。但安卓开发仍然很有难度,每当版本升级时,结构变动都会使之前的代码无法重新使用。虽然需要深入掌握安卓平台,但开发人员的主要工作就是修复Bug,所以对实际情况往往“只见树木不见森林”。本书着眼点在于“开发人员如何改善开发流程”,这个问题的关键就是深入挖掘安卓的基本实现原理。

基本功扎实的开发人员可以主导顺应智能手机时代发展的“Smart”开发。通过本书可以掌握安卓平台的操作原理,并将其直接应用于开发业务。

android系统服务开发章节目录

第1 章Android 系统服务开发1

1.1Android 系统服务开发简介2

1.1.1Android 的出现2

1.1.2移动设备的硬件结构5

1.1.3Android 硬件服务开发概要11

1.1.4本书的叙述方向14

1.2IPC16

1.2.1Android 的进程16

1.2.2进程的fork() 及exec() 函数17

1.2.3Linux 内核的IPC19

1.2.4Linux 管道20

1.2.5网络套接字21

1.2.6UNIX 套接字27

1.3I/O 多路复用30

1.3.1服务器端/ 客户端模型30

1.3.2使用select() 函数的I/O 多路复用33

1.3.3select() 函数示例34

1.4ITC36

1.4.1多线程36

1.4.2Android 的ITC 模型39

1.4.3消息42

1.4.4Looper45

1.4.5Handler49

1.4.6HandlerThread54

1.5守护进程服务分析56

1.5.1普通守护进程程序的结构56

1.5.2生成init 进程的守护进程服务58

1.5.3守护进程与多客户端间的通信65

第2 章RIL70

2.1RIL 简介71

2.1.1RIL 简介71

2.1.2AP 与调制解调器间的相互作用72

2.1.3AP 与调制解调器间的通信:RIL 命令73

2.2RIL 结构75

2.2.1Android 通信栈76

2.2.2Android RIL 的调制解调器控制模型77

2.3RIL 守护进程的结构78

2.3.1RIL 守护进程的构成要素79

2.3.2RIL 事件80

2.3.3RIL 事件调度程序81

2.4RIL 守护进程初始化87

2.4.1守护进程的启动87

2.4.2RIL 守护进程初始化过程90

2.4.3动态加载Vendor RIL 库91

2.4.4生成RIL 事件调度程序92

2.4.5Vendor RIL 初始化97

2.4.6注册Vendor RIL 的Radio控制函数及生成I/O 事件专用套接字100

2.5RIL 事件处理机制103

2.5.1RIL 事件调度程序的运行原理103

2.5.2RIL 事件处理回调函数110

2.5.3RIL req 处理机制119

2.5.4RIL resp 处理机制124

2.5.5RIL ind 处理机制129

第3 章通信框架136

3.1通信框架概要137

3.1.1通信框架的功能137

3.1.2通信框架提供的服务139

3.2通信框架的结构140

3.2.1通信框架的分层构成要素140

3.2.2PhoneApp 类142

3.2.3PhoneProxy 类142

3.2.4Phone 接口144

3.2.5Radio 接口146

3.2.6state tracker 类148

3.2.7CallManager 类149

3.2.8不同版本中通信框架的变化(1.5~4.2)151

3.3通信框架的初始化152

3.3.1Phone 应用程序的生成153

3.3.2通信框架的初始化155

3.3.3RILJava 的初始化160

3.4通信框架的服务模型164

3.4.1通信框架的服务结构164

3.4.2通信框架的服务req/resp 处理机制165

3.4.3通信框架的服务ind 处理机制172

3.5RILJava 的RIL req 处理示例186

3.5.1Phone 应用程序的通信框架API 调用187

3.5.2调用RILJava 的Radio API189

3.5.3生成RILJava 的RILRequest对象191

3.5.4向RILSender 线程传送RILRequest 对象193

3.5.5发送RILSender 线程的RIL req194

3.6RILJava 的RIL resp 处理示例197

3.6.1从RIL 守护进程接收RIL resp198

3.6.2发送RILReceiver 线程的服务resp 消息200

3.6.3处理客户端对象handler 的服务resp 消息202

3.7RILJava 的RIL ind 处理示例203

3.7.1注册Subscriber 对象的服务ind204

3.7.2接收RILReceive 线程的RIL ind205

3.7.3调用RILReceive 线程的

notifyRegistrant() 方法206

3.7.4处理Subscriber 对象handler的服务ind 消息209

第4 章USIM211

4.1USIM 简介212

4.1.1智能卡的定义213

4.1.2智能卡的启动过程213

4.1.3使用APDU 的智能卡通信215

4.1.4USIM 的由来215

4.1.5USIM 的主要功能216

4.2USIM 的数据结构及运行219

4.2.1USIM 的数据结构219

4.2.2USIM 的移动通信相关EF221

4.2.3通过APDU 读取EF 的过程223

4.3Android USIM 软件结构225

4.3.1调制解调器225

4.3.2RIL226

4.3.3通信框架226

4.3.4Android 应用程序229

4.4Android USIM 初始化及运行230

4.4.1UICC 初始化及UICC 相关对象的生成230

4.4.2系统启动后调制解调器通电235

4.4.3进入SIM_READY 状态240

4.4.4查看USIM 状态及执行EF读取244

4.4.5分析通信框架的EF 读取246

4.5Android USAT 初始化及运行254

4.5.1USAT 初始化254

4.5.2通过Display Text 分析Proactive Command258

4.5.3Android 的Proactive Command处理263

第5 章Android 电源管理270

5.1电源管理概述272

5.1.1电功率273

5.1.2了解电池273

5.1.3默认电源状态274

5.1.4Android 电源管理的作用275

5.2Android 电源管理的结构276

5.2.1Android 电源管理的层级结构277

5.2.2Power Manager278

5.2.3Power Manager Service279

5.2.4本地空间280

5.2.5内核空间282

5.2.6Android 电源管理主要方法调用过程283

5.3Power Manager Service 的初始化284

5.3.1Power Manager Service 的类结构及方法285

5.3.2生成并注册Power ManagerService286

5.3.3Power Manager Service 初始化:init() 方法290

5.3.4Power Manager Service 初始化:systemReady() 方法302

5.4Power Manager Service 的主要操作304

5.4.1Power Manager Service 状态304

5.4.2决定Power Manager Service状态307

5.4.3屏幕亮度时间的结构315

5.4.4根据屏幕亮度时间控制屏幕亮度318

5.4.5屏幕亮度转换的结构要素320

5.4.6屏幕亮度转换操作321

5.4.7Wake Lock 标记与标签328

5.4.8生成Wake Lock330

5.4.9获取Wake Lock334

5.4.10解除Wake Lock344

5.5间接应用电源管理服务344

5.5.1Power Manager 类提供的方法345

5.5.2Power Manager 类的实例化及获取345

5.5.3获取Wake Lock:PARTIAL_WAKE_LOCK347

5.5.4Wake Lock 获取示例:PARTIAL_WAKE_LOCK348

5.5.5获取Wake Lock:屏幕亮度控制标记350

5.5.6Wake Lock 获取示例:FULL_WAKE_LOCK352

5.5.7获取Wake Lock:ACQUIRE_CAUSES_WAKEUP353

5.5.8解除Wake Lock:PARTIAL_WAKE_LOCK357

5.5.9解除Wake Lock:屏幕亮度控制标记358

5.5.10解除Wake Lock:ON_AFTER_RELEASE360

5.6直接应用Power Manager Service361

5.6.1屏幕亮度设置362

5.6.2Poke Lock363

5.7不应用Power Manager Service的Wake Lock364

第6 章Android 内核电源管理367

6.1Linux 内核电源管理369

6.1.1APM 与ACPI369

6.1.2设备电源管理372

6.2Android 内核电源管理372

6.2.1Android 内核修订内容372

6.2.2kobject 与sysfs 文件系统373

6.2.3生成用于电源管理的sysfs文件376

6.3电源管理初始化378

6.4Early Suspend381

6.4.1Early Suspend 结构体与注册382

6.4.2Early Suspend 操作384

6.5Wake Lock387

6.5.1Wake Lock 结构387

6.5.2生成Wake Lock389

6.5.3激活Wake Lock390

6.5.4禁用Wake Lock393

6.6Suspend394

6.6.1执行Suspend394

6.6.2准备Suspend395

6.6.3进入Suspend396

6.7Resume399

6.7.1Early Resume400

6.7.2设备Resume401

6.7.3Resume 完成402

6.8Late Resume402

6.9Surface Flinger 与内核之间的相互操作405

6.9.1屏幕On(开)状态到Off

(关)状态的转换406

6.9.2屏幕Off(关)状态到On(开)状态的转换409

索引412

使用说明

1、下载并解压,得出pdf文件

2、如果打不开本文件,请务必下载pdf阅读器

3、安装后,在打开解压得出的pdf文件

4、双击进行阅读

收起介绍展开介绍
  • 下载地址
android系统服务开发 pdf完整扫描版

有问题? 点此报错

发表评论

0条评论