Android Telephony原理解析与开发指南
全新正版 极速发货
¥
36.93
6.2折
¥
59.8
全新
库存6件
作者杨青平
出版社人民邮电出版社
ISBN9787115489159
出版时间2018-09
装帧平装
开本16开
定价59.8元
货号1201752049
上书时间2024-09-18
商品详情
- 品相描述:全新
- 商品描述
-
作者简介
杨青平,著有《深入解析Android:Telephony原理剖析及实践》,Android系统工程师和软件开发工程师,热衷于Android用源代码和系统原理的研究,对Android的系统架构、设计原理以及Telephony和Framework等核心功能模块的工作机制有很好深入的研究。目前任职于国内AndroidOS提供商ThunderSoft(中科创达),担任系统架构师。
目录
第1章初识Android1
1.1智能手机的系统结构1
1.2Android系统架构2
1.2.1应用层3
1.2.2应用框架层3
1.2.3系统运行库层3
1.2.4核心层4
1.3AndroidTelephony框架结构5
1.3.1系统运行库层的HAL6
1.3.2简析HAL结构6
1.3.3Android为什么引入HAL7
1.3.4Android中HAL的运行结构7
本章小结8
第2章搭建Android源代码编译调试环境9
2.1UbuntuLinux操作系统及工具安装10
2.1.1PC配置建议10
2.1.2Ubuntu安装光盘制作10
2.1.3Ubuntu安装过程10
2.1.4安装OpenJDK12
2.1.5Ubuntu系统工具包更新升级13
2.2Android源代码下载及编译过程13
2.2.1工作目录设置13
2.2.2源代码下载13
2.2.3开始编译Android源代码14
2.2.4编译单个模块16
2.3AndroidStudio及SDK17
2.3.1下载和配置AndroidStudio17
2.3.2AndroidSDK下载及配置和使用17
2.3.3使用AndroidSDK启动Android虚拟设备19
2.3.4Android调试工具adb的使用方法20
2.3.5相关技巧汇总20
2.4在Google手机上调试Android源码21
2.4.1Google手机对应编译选项21
2.4.2Google手机刷入工厂镜像21
2.4.3编译本地镜像并刷入Google手机22
2.4.4Google手机上调试Android源码25
2.4.5关键问题总结26
本章小结27
第3章深入解析通话流程29
3.1拨号流程分析29
3.1.1打开Nexus6P手机的拨号盘30
3.1.2进入拨号界面DialtactsActivity30
3.1.3DialpadFragment拨号盘32
3.1.4ITelecomService接收拨号请求服务33
3.1.5CallsManager拨号流程处理35
3.1.6IInCallService服务的响应过程40
3.1.7继续分析CallsManager.placeOutgoingCall46
3.1.8Telecom应用拨号流程回顾与总结50
3.1.9IConnectionService服务的响应过程51
3.1.10TelecomAdapter接收消息回调55
3.1.11拨号流程总结56
3.2来电流程分析57
3.2.1分析radio来电日志58
3.2.2UNSOL_RESPONSE_CALL_STATE_CHANGED消息处理58
3.2.3扩展RegistrantList消息处理机制59
3.2.4GsmCdmaCallTracker消息处理61
3.2.5ITelecomService处理来电消息63
3.2.6来电流程总结66
3.3通话总结66
3.3.1通话关键代码汇总66
3.3.2通话状态更新消息上报流程68
3.3.3控制通话消息下发流程69
3.4建立Android通话模型70
本章小结71
第4章详解Telecom73
4.1Telecom应用加载入口73
4.1.1TelecomManager类核心逻辑分析74
4.1.2Telecom应用代码汇总76
4.1.3ITelecomService的onBind过程77
4.1.4第二个拨号入口79
4.2Telecom交互模型79
4.2.1汇总frameworks/base/telecomm代码80
4.2.2绑定IInCallService机制81
4.2.3绑定IConnectionService机制82
4.2.4演进Telecom交互模型85
4.3核心Listener回调消息处理86
4.3.1CallsManagerListener86
4.3.2Call.Listener88
4.3.3CreateConnectionResponse90
4.3.4总结Listener消息90
4.4扩展CallsManager92
4.4.1记录通话日志92
4.4.2耳机Hook事件93
4.4.3通知栏信息同步93
本章小结94
第5章详解TeleService95
5.1加载过程分析95
5.1.1应用基本信息96
5.1.2PhoneGlobals.onCreate97
5.1.3TelephonyGlobals.onCreate98
5.2TelephonyPhone98
5.2.1GsmCdmaPhone99
5.2.2Composition(组合)关系101
5.2.3FacadePattern102
5.2.4Handler消息处理机制103
5.3扩展PhoneAccount105
5.3.1PhoneAccount初始化过程105
5.3.2PhoneAccount注册响应108
5.3.3PhoneAccount在拨号流程中的作用分析109
5.3.4小结112
5.4TeleService服务113
5.4.1phone系统服务113
5.4.2isub系统服务115
5.4.3IConnectionService应用服务118
本章小结123
第6章VoiceCall语音通话模型125
6.1详解GsmCdmaCallTracker125
6.1.1代码结构解析126
6.1.2Handler消息处理方式127
6.1.3与RILJ对象的交互机制130
6.2handlePollCalls方法134
6.2.1准备阶段134
6.2.2更新通话相关信息135
6.2.3发出通知140
6.2.4更新mState141
6.3通话管理模型分析142
6.3.1GsmCdmaCall143
6.3.2GsmCdmaConnection143
6.3.3DriverCall、Call、Connection146
6.4补充通话连接断开处理机制149
6.4.1本地主动挂断通话149
6.4.2远端断开通话连接152
6.5区分Connection154
6.6扩展InCallUi155
6.6.1初始化过程155
6.6.2addCall158
6.6.3InCallUi通话界面160
6.6.4updateCall165
6.7验证Call运行模型166
6.7.1TelephonyVoiceCall167
6.7.2TelecomCall170
6.7.3InCallUiCall171
本章小结173
第7章ServiceState网络服务175
7.1ServiceState176
7.1.1ServiceState类的本质176
7.1.2关键常量信息177
7.1.3关键属性177
7.1.4关键方法178
7.2ServiceStateTracker运行机制详解179
7.2.1核心类图179
7.2.2代码结构180
7.2.3Handler消息处理机制181
7.2.4与RILJ对象的交互机制184
7.3handlePollStateResult方法186
7.3.1异常处理186
7.3.2handlePollStateResultMessage187
7.3.3继续更新mNewSS190
7.3.4完成收尾工作191
7.4*#*#4636#*#*测试工具193
7.4.1网络服务信息194
7.4.2扩展ITelephonyRegistry196
7.4.3展示小区信息197
7.4.4小区信息更新源头198
7.4.5信号强度实时变化199
7.5飞行模式201
7.5.1飞行模式开启关闭入口逻辑201
7.5.2Radio模块开启关闭202
7.5.3WiFi模块开启关闭202
7.5.4蓝牙模块开启关闭202
7.6扩展SIM卡业务203
7.6.1SIM卡业务分析203
7.6.2驻网过程分析204
7.6.3SoftSim业务实现分析205
本章小结206
第8章DataCall移动数据业务207
8.1DcTracker初始化过程207
8.1.1Handler消息注册208
8.1.2初始化ApnContext208
8.1.3认识APN210
8.1.4创建DcController212
8.1.5注册Observer213
8.1.6广播接收器213
8.1.7加载ApnSetting213
8.2解析StateMachine215
8.2.1State设计模式215
8.2.2StateMachine核心类215
8.2.3初始化流程216
8.2.4运行流程217
8.2.5小结218
8.3DataConnection219
8.3.1关键属性220
8.3.2关键方法220
8.3.3StateMachine初始化流程221
8.4开启移动数据业务222
8.4.1流程分析222
8.4.2前置条件分析227
8.4.3DcActiveState收尾工作231
8.4.4Suspend挂起状态232
8.4.5查看手机上网基本信息232
8.5关闭移动数据业务233
8.6DataConnection状态转换233
8.7获取Android手机上网数据包234
8.7.1使用tcpdump工具抓取TCP/IP数据包234
8.7.2使用Wireshark软件分析TCP/IP数据包235
本章小结235
第9章SMS&MMS业务236
9.1短信发送流程236
9.1.1进入短信应用236
9.1.2短信编辑界面237
9.1.3Action处理机制239
9.1.4继续跟进短信发送流程241
9.1.5phone进程中的短信发送流程243
9.2扩展短信发送业务245
9.2.1确认短信发送结果245
9.2.2重发机制246
9.2.3状态报告247
9.3短信接收流程247
9.3.1RIL接收短信消息247
9.3.2GsmInboundSmsHandler248
9.3.3Messaging应用接收新短信250
9.3.4PDU251
9.3.5短信业务小结252
9.4彩信关键业务逻辑253
9.4.1彩信发送入口253
9.4.2imms系统服务254
9.4.3彩信发送流程255
9.4.4DataCall256
9.4.5doHttp259
9.4.6接收彩信259
9.4.7MmsService小结260
本章小结261
第10章RadioInterfaceLayer262
10.1解析RILJ263
10.1.1认识RIL类263
10.1.2RILRequest265
10.1.3IRadio关联的服务266
10.1.4RIL消息分类270
10.1.5SolicitedRequest270
10.1.6SolicitedResponse271
10.1.7UnSolicited274
10.2详解rild274
10.2.1RIL_startEventLoop275
10.2.2获取RIL_RadioFunctions275
10.2.3注册RIL_RadioFunctions277
10.3libril初始化流程278
10.3.1RIL_startEventLoop278
10.3.2RIL_register280
10.4扩展hal接口281
10.4.1增加接口定义282
10.4.2验证生成的代码282
10.4.3实现新增接口285
10.4.4运行结果验证286
10.5RILC运行机制287
10.5.1Solicited消息287
10.5.2UnSolicited消息291
本章小结293
内容摘要
随着Android系统平台的应用越来越广泛,更多人加入到Android平台的定制研发中来。Android的基本通信功能是Android系统定制的核心模块,本书主要围绕Android Telephony和融合通信两个核心部分展开。Android Telephony部分从接打电话、网络服务、数据上网三个功能解析Telephony。全书共10章,主要内容包括初识Android、搭建Android源代码编译调试环境、深入解析通话流程、详解Telecom、详解TeleService、Voice Call语音通话模型、ServiceState网络服务、Data Call移动数据业务、SMS & MMS业务、Radio Interface Layer)。本书适合计算机科学技术、信息技术、通信工程、软件工程等专业的研究生、本科、高职高专学生使用。
— 没有更多了 —
以下为对购买帮助不大的评价