图书介绍
深入理解 Android Telephony原理剖析与最佳实践2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载

- 杨青平著 著
- 出版社: 北京:机械工业出版社
- ISBN:9787111406761
- 出版时间:2013
- 标注页数:331页
- 文件大小:35MB
- 文件页数:350页
- 主题词:移动终端-应用程序-程序设计
PDF下载
下载说明
深入理解 Android Telephony原理剖析与最佳实践PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第一部分 基础篇2
第1章 初识Android2
1.1 智能手机的系统结构2
1.2 Android系统架构3
1.2.1 应用层3
1.2.2 应用框架层4
1.2.3 系统运行库层5
1.2.4 核心层6
1.3 Android Telephony框架结构6
1.3.1 系统运行库层的HAL层7
1.3.2 简析HAL结构8
1.3.3 Android为什么引入HAL9
1.3.4 Android中HAL的运行结构9
1.4 本章小结10
第2章 搭建Android源代码编译环境11
2.1 Ubuntu Linux操作系统及工具安装11
2.1.1 PC配置建议12
2.1.2 Ubuntu安装光盘的制作12
2.1.3 Ubuntu安装过程12
2.1.4 Ubuntu系统工具包更新升级14
2.1.5 Java运行环境JDK安装及配置15
2.1.6 Android SDK的下载和配置16
2.1.7 使用Android SDK启动虚拟设备17
2.2 Android源代码下载及编译过程19
2.2.1 工作目录设置19
2.2.2 源代码下载19
2.2.3 整体编译Android源代码19
2.2.4 单个模块按需编译20
2.2.5 编译生成本地Android SDK21
2.3 Android常用工具使用及相关技巧说明21
2.3.1 使用本地编译成功的镜像文件启动Android模拟器22
2.3.2 Android调试工具adb的使用方法23
2.3.3 进入Android虚拟设备控制台模拟短信、来电等功能23
2.4 Eclipse配置及使用24
2.4.1 Android开发套件ADT下载及配置24
2.4.2 建立Android源代码Java工程25
2.4.3 格式化Android Java源代码26
2.5 使用Source Insight方便阅读C/C++代码26
2.5.1 安装Wine26
2.5.2 安装Source Insight26
2.5.3 配置Source Insight C/C++工程27
2.6 本章小结27
第3章 主要技术准备29
3.1 何为同步和异步29
3.2 Handler消息处理机制30
3.2.1 Handler概念分析30
3.2.2 Handler特性30
3.2.3 常用Handler消息处理机制讲解31
3.2.4 Handler的作用34
3.3 AIDL跨应用服务35
3.3.1 AIDL概念分析35
3.3.2 AIDL服务提供方36
3.3.3 AIDL服务调用方37
3.4 广播38
3.4.1 Android系统中的广播38
3.4.2 Broadcast接收38
3.4.3 Broadcast发送39
3.5 本章小结39
第二部分 Telephony通话功能第4章 深入解析通话流程42
4.1 通话相关主要源代码汇总及简要说明42
4.2 电话主动呼叫流程分析44
4.2.1 运行Android虚拟设备44
4.2.2 拨号界面DialtactsActivity的onCreate方法45
4.2.3 DialpadFragment拨号盘Tab表单45
4.2.4 寻找拨号统一入口OutgoingCallBroadcaster47
4.2.5 CallController拨号placeCall方法47
4.2.6 Phone帮助类PhoneUtils静态placeCall方法48
4.2.7 通话大管家CallManager50
4.2.8 Phone对象的dial拨号方法50
4.2.9 Call状态跟踪者GsmCallTracker51
4.2.10 RIL消息的出入口RIL.java52
4.2.11 启动通话主界面InCallScreen53
4.2.12 拨号流程总结53
4.3 电话被动接收来电流程分析55
4.3.1 Android虚拟设备模拟接收来电56
4.3.2 RegistrantList消息处理机制57
4.3.3 GsmCallTracker响应RIL的Call状态变化通知60
4.3.4 RIL.java的getCurrentCalls方法60
4.3.5 GsmCallTracker响应消息通知61
4.3.6 handlePollCalls发出来电通知61
4.3.7 GSMPhone的通知方法notifyNewRingingConnection62
4.3.8 CallManager响应来电消息通知62
4.3.9 CallNotifier响应来电通知63
4.3.10 InCallScreen展现来电界面64
4.3.11 来电流程总结65
4.4 通话关键流程66
4.4.1 建立Android通话模型67
4.4.2 AT命令发送流程68
4.4.3 通话状态变化流程69
4.4.4 本地主动挂断通话流程70
4.4.5 远端断开通话连接流程72
4.5 本章小结73
第5章 深入解析Telephony通话应用机制74
5.1 Phone应用的关键代码解析74
5.2 认识通话主界面InCallScreen75
5.2.1 InCallScreen中的主要方法76
5.2.2 单例模式的Activity通话界面76
5.2.3 Layout布局说明77
5.3 通话主界面InCallScreen78
5.3.1 onCreate——运行Activity78
5.3.2 onNewIntent——单例InCallScreen加载入口80
5.3.3 internalResolveIntent——进入InCallScreen处理Intent的唯一方法81
5.3.4 onResume——显示InCallScreen通话界面82
5.3.5 handleMessage——Handler消息响应方法84
5.3.6 onSuppSerViceFailed——显示通话服务失败提示信息85
5.3.7 updateScreen——更新通话界面86
5.3.8 onDisconnect——断开通话连接88
5.3.9 handleOnscreenButtonClick——响应通话控制按钮点击事件90
5.3.10 InCallScreen通话界面运行机制总结91
5.4 通话信息展示CallCard92
5.4.1 两路通话布局View控件92
5.4.2 updateState——更新CallCard93
5.4.3 displayMainCallStatus——显示更新第一路通话信息95
5.4.4 displayOnHoldCallStatus——显示更新第二路通话信息97
5.4.5 修改通话信息展示的思路及原则98
5.5 通话控制InCallTouchUi99
5.5.1 View布局控件99
5.5.2 updateState——更新InCallTouchUi101
5.5.3 MultiWaveView——来电控制接听、拒接界面102
5.5.4 HeadSet——响应免提事件103
5.5.5 修改来电界面的思路及原则104
5.6 通话功能中必不可少的DTMF105
5.6.1 什么是DTMF105
5.6.2 DTMFTwelveKeyDialer的布局105
5.6.3 如何显示DTMF界面106
5.6.4 Tone音发送流程106
5.7 Phone应用的加载入口PhoneApp类108
5.7.1 PhoneApp类属性及方法108
5.7.2 onCreate——PhoneApp应用加载入口109
5.7.3 PowerManager——PhoneApp电源管理110
5.7.4 Sensor——PhoneApp感应器的应用112
5.7.5 MediaButtonBroadcastReceiver——接收耳机HOOK键广播事件115
5.7.6 PhoneAppBroadcastReceiver——接收Phone应用杂项广播事件116
5.8 Handler消息处理的幕后工作者CallNotifier118
5.8.1 CallNotifier的本质118
5.8.2 Handler消息注册和响应机制119
5.8.3 onNewRingingConnection——接收到新来电的幕后处理119
5.8.4 onPhoneStateChanged——通话状态变化的幕后处理121
5.8.5 onDisconnect——通话连接断开的幕后处理122
5.9 本章小结124
第6章 手机通话功能框架层实现机制125
6.1 Telephony Frameworks层解析125
6.1.1 通话功能相关代码文件125
6.1.2 通话功能关键类126
6.1.3 Telephony通信能力模型127
6.2 GSMPhone对象详解128
6.2.1 GSMPhone类层次继承关系128
6.2.2 GSMPhone类代码结构解析129
6.2.3 PhoneFactory工厂方法实现类130
6.2.4 PhoneProxy代理模式实现类131
6.2.5 GSMPhone类的组合逻辑关系132
6.2.6 GSMPhone类的Handler消息处理机制133
6.2.7 GSMPhone类通话管理实现机制136
6.3 CallTracker运行机制137
6.3.1 GsmCallTracker类代码结构解析137
6.3.2 GsmCallTracker的Handler消息处理机制139
6.3.3 GsmCallTracker与RIL对象的交互机制142
6.4 以GsmCall为核心的通话管理模型145
6.4.1 GsmCall类代码结构解析146
6.4.2 GsmConnection类代码结构解析147
6.4.3 DriverCall与GsmCall、GsmConnection的关系149
6.5 GsmCallTracker类的handlePollCalls方法处理逻辑153
6.5.1 初始化操作153
6.5.2 更新通话相关信息154
6.5.3 根据最新的通话状态发出通知158
6.5.4 更新手机状态158
6.6 GsmCallTracker通话连接断开的处理机制160
6.6.1 本地主动挂断通话的处理机制160
6.6.2 远端断开通话连接的处理机制162
6.7 Android虚拟设备上验证GSM制式手机的通话模型164
6.7.1 增加日志输出164
6.7.2 运行Android虚拟设备并分析日志166
6.8 通话大管家CallManager168
6.8.1 CallManager的本质168
6.8.2 Handler消息注册及运行机制169
6.8.3 如何获取通话基本信息170
6.9 通话计时实例分析171
6.9.1 记录通话的开始时间171
6.9.2 记录通话的结束时间171
6.9.3 Phone应用计算通话时长171
6.10 Handler消息处理机制173
6.10.1 Handler消息的注册过程173
6.10.2 Handler消息的接收和响应过程174
6.11 实战——来电防火墙175
6.11.1 应用原理分析175
6.11.2 在onNewRingingConnection方法加入拦截请求176
6.12 本章小结176
第三部分 Telephony通信功能第7章 网络服务状态运行机制180
7.1 什么是ServiceState180
7.2 初识ServiceState实体类180
7.2.1 ServiceState类的实质181
7.2.2 ServiceState类关键常量及属性181
7.2.3 ServiceState类关键方法182
7.3 ServiceStateTracker运行机制详解183
7.3.1 ServiceStateTracker抽象类为核心的类图184
7.3.2 ServiceStateTracker代码结构184
7.3.3 ServiceStateTracker的Handler消息处理机制186
7.3.4 ServiceStateTracker与RIL对象的交互机制189
7.4 handlePollStateResult方法处理逻辑192
7.4.1 RIL返回查询结果的异常判断和处理192
7.4.2 处理4个不同网络服务查询返回的结果192
7.4.3 用pollStateDone方法完成收尾工作195
7.5 ServiceState最佳实践197
7.5.1 获取运营商信息197
7.5.2 通知栏手机信号实时变化198
7.6 实战——飞行模式的实现200
7.6.1 飞行模式的设置入口200
7.6.2 Radio无线通信模块的开启或关闭202
7.7 本章小结203
第8章 Android手机上网实现机制204
8.1 Android网络整体结构204
8.2 什么是DataConnection205
8.2.1 DataConnection类定义及子类205
8.2.2 DataConnection类关键属性206
8.2.3 DataConnection类的方法207
8.2.4 5个数据连接对象的状态转换207
8.3 StateMachine状态机208
8.3.1 State设计模式209
8.3.2 StateMachine核心类209
8.3.3 StateMachine运行机制210
8.3.4 DataConnection使用State模式的运行机制211
8.4 什么是APN212
8.4.1 APN配置关键字段212
8.4.2 Android支持的APN类型213
8.4.3 如何在Android中新增APN配置213
8.5 开机自动建立default默认数据连接215
8.5.1 如何查看手机上网的基本参数配置215
8.5.2 初始化ApnContext216
8.5.3 创建DataConnection数据连接219
8.5.4 激活DataConnection数据连接222
8.6 DataConnectionTracker运行机制226
8.6.1 初始化ApnContext操作227
8.6.2 开机建立default默认的数据连接228
8.6.3 关闭数据连接229
8.6.4 循环更新网络连接状态信息230
8.6.5 APN数据库配置信息变化的观察者231
8.7 获取Android手机上网数据包232
8.7.1 使用tcpdump工具抓取TCP/IP数据包232
8.7.2 使用Wireshark软件分析TCP/IP数据包232
8.8 MMS彩信数据连接的实现233
8.8.1 建立和关闭彩信数据连接233
8.8.2 如何支持多种类型网络连接234
8.9 实战——手机上网数据总开关的实现235
8.10 本章小结235
第9章 深入解析短信发送和接收流程237
9.1 MMS应用主要源代码汇总及简要说明237
9.2 主动发送短信流程分析238
9.2.1 进入短信会话列表界面238
9.2.2 短信编辑界面239
9.2.3 SmsMessageSender短信发送处理逻辑241
9.2.4 Telephony Frameworks层中的SmsManager类243
9.2.5 IccSmsInterfaceManager服务发送短信244
9.2.6 SMSDispatcher短信分发器245
9.2.7 主动发送短信流程总结246
9.3 短信发送状态相关处理机制248
9.3.1 如何判断短信是否成功发送到短信中心248
9.3.2 如何判断短信接收方已经成功收取短信250
9.4 短信接收流程分析252
9.4.1 短信接收的开始252
9.4.2 进入短信分发器SMSDispatcher253
9.4.3 接收并处理新短信Broadcast广播254
9.4.4 短信接收流程总结254
9.5 彩信发送和接收关键流程255
9.5.1 彩信传输过程中的关键类255
9.5.2 TransactionService为核心的彩信传输机制257
9.5.3 Transaction对象执行彩信传输259
9.5.4 基于WAP PUSH的彩信接收与下载260
9.6 本章小结261
第四部分 深入解析Android RIL第10章 Android RIL框架结构及RILJ运行机制264
10.1 Android RIL关键处理流程264
10.1.1 Android RIL框架结构264
10.1.2 Android RIL的数据交互265
10.2 认识RILJ265
10.2.1 RILJ核心类图265
10.2.2 RILJ关键属性266
10.2.3 RILJ关键方法267
10.2.4 RILJ运行机制268
10.3 认识RILRequest类269
10.3.1 RILRequest类的关键属性269
10.3.2 RILRequest类的方法269
10.4 解析RILJ发出RIL请求流程271
10.4.1 send方法发送Handler消息271
10.4.2 RILSender接收和处理Handler消息272
10.5 解析RILJ接收Response消息处理流程273
10.5.1 RILReceiver内部类运行机制273
10.5.2 Solicited Response消息处理方法processSolicited276
10.5.3 UnSolicited Response消息处理方法processUnsolicited279
10.6 本章小结280
第11章 RILC系统结构及LibRIL运行机制281
11.1 RILC主要代码目录结构281
11.2 解析RILC运行机制282
11.2.1 RILC启动过程283
11.2.2 RILC运行过程285
11.3 初识RILC中的运行环境LibRIL285
11.3.1 LibRIL主要文件及作用285
11.3.2 重点结构体说明286
11.4 LibRIL运行环境加载过程288
11.4.1 开启ril_event事件监听入口RIL_startEventLoop288
11.4.2 RIL_register函数引入三方RIL_RadioFunctions290
11.5 运行状态中ril_event事件处理机制291
11.5.1 认识ril_event结构体291
11.5.2 RIL事件生命周期控制的处理函数292
11.5.3 ril_event_loop处理机制294
11.6 详解LibRIL运行机制296
11.6.1 RILJ与LibRIL建立Socket连接过程296
11.6.2 Solicited消息的交互流程和处理机制297
11.7 本章小结302
第12章 Reference-RIL运行框架303
12.1 Reference-RIL运行机制303
12.1.1 RIL_Init函数初始化Reference-RIL303
12.1.2 onRequest接收LibRIL的请求调用304
12.1.3 UnSolicited消息处理逻辑306
12.2 AT命令310
12.2.1 如何新增AT命令310
12.2.2 Android Telephony常用AT命令310
12.3 Android RIL层运行框架和机制总结311
12.3.1 总结Solicited消息处理流程312
12.3.2 总结UnSolicited消息处理流程313
12.4 本章小结314
第五部分 系统服务316
第13章 Telephony提供的系统服务316
13.1 System Service系统服务类图316
13.2 详解PhoneInterfaceManager实现机制317
13.2.1 ITelephony.aidl接口定义318
13.2.2 PhoneInterfaceManager服务创建过程318
13.2.3 PhoneInterfaceManager服务使用实例分析318
13.3 详解TelephonyRegistry实现机制319
13.3.1 系统服务的创建入口320
13.3.2 TelephonyRegistry关键方法320
13.3.3 listen方法处理逻辑320
13.3.4 notifyCallState方法发出通话状态变化通知321
13.3.5 触发TelephonyRegistry发出通知机制322
13.3.6 TelephonyRegistry系统服务使用实例分析323
13.4 简述TelephonyManager实现机制324
13.5 本章小结326
热门推荐
- 1811504.html
- 2708036.html
- 3742465.html
- 1750262.html
- 3683804.html
- 275792.html
- 1118533.html
- 1736535.html
- 786695.html
- 1916805.html
- http://www.ickdjs.cc/book_810517.html
- http://www.ickdjs.cc/book_1156561.html
- http://www.ickdjs.cc/book_2956167.html
- http://www.ickdjs.cc/book_346826.html
- http://www.ickdjs.cc/book_2797394.html
- http://www.ickdjs.cc/book_716277.html
- http://www.ickdjs.cc/book_1809330.html
- http://www.ickdjs.cc/book_1276172.html
- http://www.ickdjs.cc/book_624803.html
- http://www.ickdjs.cc/book_1660325.html