注冊(cè) | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)軟件與程序設(shè)計(jì)程序設(shè)計(jì)綜合深入理解Android:Telephony原理剖析與最佳實(shí)踐

深入理解Android:Telephony原理剖析與最佳實(shí)踐

深入理解Android:Telephony原理剖析與最佳實(shí)踐

定 價(jià):¥69.00

作 者: 楊青平 著
出版社: 機(jī)械工業(yè)出版社
叢編項(xiàng):
標(biāo) 簽: 程序設(shè)計(jì) 計(jì)算機(jī)/網(wǎng)絡(luò) 移動(dòng)開發(fā)

ISBN: 9787111406761 出版時(shí)間: 2013-01-01 包裝: 平裝
開本: 16開 頁(yè)數(shù): 352 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

  《深入理解Android:Telephony原理剖析與最佳實(shí)踐》是“深入理解Android”系列的第3本,前兩本書的內(nèi)容和質(zhì)量在Android開發(fā)者社群內(nèi)得到了高度認(rèn)可,已經(jīng)樹立起該系列圖書的品牌。在寫作思路和方式上,本書與前兩本書一脈相承,對(duì)它們的優(yōu)點(diǎn)進(jìn)行了繼承和發(fā)揚(yáng);在內(nèi)容上,本書從從源代碼角度深入解析了AndroidTelephony的架構(gòu)設(shè)計(jì)與實(shí)現(xiàn)原理,深刻揭示了Android系統(tǒng)的通信機(jī)制。對(duì)于Android應(yīng)用開發(fā)工程師和系統(tǒng)工程師而言,本書都是難得的研究和學(xué)習(xí)資料。全書共13章,分為五部分:第一部分(1~3章),首先介紹了智能手機(jī)的系統(tǒng)結(jié)構(gòu)、Android系統(tǒng)的架構(gòu)、Telephony框架的結(jié)構(gòu),然后詳細(xì)介紹了Android源代碼編譯環(huán)境和閱讀環(huán)境的搭建方法,以及閱讀本書要做的技術(shù)準(zhǔn)備;第二部分(4~6章),對(duì)Android的通話功能進(jìn)行了深入的分析,包括對(duì)通話流程的分析、對(duì)主動(dòng)撥號(hào)和來電流程的分析、對(duì)通話應(yīng)用機(jī)制的分析,以及對(duì)手機(jī)通信功能在框架層和應(yīng)用層中的實(shí)現(xiàn)機(jī)制的分析;第三部分(7~9章),對(duì)Android的通信功能進(jìn)行了深入的分析,包括對(duì)網(wǎng)絡(luò)服務(wù)狀態(tài)的運(yùn)行機(jī)制的分析、對(duì)Android手機(jī)上網(wǎng)的實(shí)現(xiàn)機(jī)制的分析,以及對(duì)短息發(fā)送和接收流程的分析;第四部分(10~12章),對(duì)AndroidRIL的工作機(jī)制進(jìn)行了深入的分析,包括對(duì)框架層中的RILJ運(yùn)行機(jī)制的分析、對(duì)RILC系統(tǒng)結(jié)構(gòu)及LibRIL運(yùn)行機(jī)制的分析,以及對(duì)Reference-RIL框架的原理的分析;第五部分(13章),分析了Telephony模塊所提供的系統(tǒng)服務(wù),包括系統(tǒng)服務(wù)的注冊(cè)入口以及調(diào)用系統(tǒng)服務(wù)接口的實(shí)例。

作者簡(jiǎn)介

  楊青平,資深A(yù)ndroid系統(tǒng)工程師和軟件開發(fā)工程師,熱衷于Android用源代碼和系統(tǒng)原理的研究,對(duì)Android的系統(tǒng)架構(gòu)、設(shè)計(jì)原理以及Telephony和Framework等核心功能模塊的工作機(jī)制有非常深入的研究。目前就職于國(guó)內(nèi)領(lǐng)先的AndroidOS提供商ThunderSoft(中科創(chuàng)達(dá)),擔(dān)任系統(tǒng)架構(gòu)師。他對(duì)J2EE、UML、設(shè)計(jì)模式等相關(guān)技術(shù),以及電信增值業(yè)務(wù)、電子商務(wù)、物聯(lián)網(wǎng)等重要軟件行業(yè)的運(yùn)行模式、業(yè)務(wù)發(fā)展規(guī)劃也有較深入的了解。此外,他還是一位經(jīng)驗(yàn)豐富的講師,有多年的人才培訓(xùn)經(jīng)驗(yàn),善于總結(jié)和分享。

圖書目錄

推薦序
前言
第一部分 基礎(chǔ)篇
第1章 初識(shí)Android / 2
1.1 智能手機(jī)的系統(tǒng)結(jié)構(gòu) / 2
1.2 Android系統(tǒng)架構(gòu) / 3
1.2.1 應(yīng)用層 / 3
1.2.2 應(yīng)用框架層 / 4
1.2.3 系統(tǒng)運(yùn)行庫(kù)層 / 5
1.2.4 核心層 / 6
1.3 Android Telephony框架結(jié)構(gòu) / 6
1.3.1 系統(tǒng)運(yùn)行庫(kù)層的HAL層 / 7
1.3.2 簡(jiǎn)析HAL結(jié)構(gòu) / 8
1.3.3 Android為什么引入HAL / 9
1.3.4 Android中HAL的運(yùn)行結(jié)構(gòu) / 9
1.4 本章小結(jié) / 10
第2章 搭建Android源代碼編譯環(huán)境 / 11
2.1 Ubuntu Linux操作系統(tǒng)及工具安裝 / 11
2.1.1 PC配置建議 / 12
2.1.2 Ubuntu安裝光盤的制作 / 12
2.1.3 Ubuntu安裝過程 / 12
2.1.4 Ubuntu系統(tǒng)工具包更新升級(jí) / 14
2.1.5 Java運(yùn)行環(huán)境JDK安裝及配置 / 15
2.1.6 Android SDK的下載和配置 / 16
2.1.7 使用Android SDK啟動(dòng)虛擬設(shè)備 / 17
2.2 Android源代碼下載及編譯過程 / 19
2.2.1 工作目錄設(shè)置 / 19
2.2.2 源代碼下載 / 19
2.2.3 整體編譯Android 源代碼 / 19
2.2.4 單個(gè)模塊按需編譯 / 20
2.2.5 編譯生成本地Android SDK / 21
2.3 Android常用工具使用及相關(guān)技巧說明 / 21
2.3.1 使用本地編譯成功的鏡像文件啟動(dòng)Android模擬器 / 22
2.3.2 Android調(diào)試工具adb的使用方法 / 23
2.3.3 進(jìn)入Android虛擬設(shè)備控制臺(tái)模擬短信、來電等功能 / 23
2.4 Eclipse配置及使用 / 24
2.4.1 Android開發(fā)套件ADT下載及配置 / 24
2.4.2 建立Android源代碼Java工程 / 25
2.4.3 格式化Android Java源代碼 / 26
2.5 使用Source Insight方便閱讀C/C++代碼 / 26
2.5.1 安裝Wine / 26
2.5.2 安裝Source Insight / 26
2.5.3 配置Source Insight C/C++工程 / 27
2.6 本章小結(jié) / 27
第3章 主要技術(shù)準(zhǔn)備 / 29
3.1 何為同步和異步 / 29
3.2 Handler消息處理機(jī)制 / 30
3.2.1 Handler概念分析 / 30
3.2.2 Handler特性 / 30
3.2.3 常用Handler消息處理機(jī)制講解 / 31
3.2.4 Handler的作用 / 34
3.3 AIDL跨應(yīng)用服務(wù) / 35
3.3.1 AIDL概念分析 / 35
3.3.2 AIDL服務(wù)提供方 / 36
3.3.3 AIDL服務(wù)調(diào)用方 / 37
3.4 廣播 / 38
3.4.1 Android 系統(tǒng)中的廣播 / 38
3.4.2 Broadcast接收 / 38
3.4.3 Broadcast發(fā)送 / 39
3.5 本章小結(jié) / 39
第二部分 Telephony通話功能
第4章 深入解析通話流程 / 42
4.1 通話相關(guān)主要源代碼匯總及簡(jiǎn)要說明 / 42
4.2 電話主動(dòng)呼叫流程分析 / 44
4.2.1 運(yùn)行Android虛擬設(shè)備 / 44
4.2.2 撥號(hào)界面DialtactsActivity的onCreate方法 / 45
4.2.3 DialpadFragment撥號(hào)盤Tab表單 / 45
4.2.4 尋找撥號(hào)統(tǒng)一入口OutgoingCallBroadcaster / 47
4.2.5 CallController撥號(hào)placeCall方法 / 47
4.2.6 Phone幫助類PhoneUtils靜態(tài)placeCall方法 / 48
4.2.7 通話大管家CallManager  / 50
4.2.8 Phone對(duì)象的dial撥號(hào)方法 / 50
4.2.9 Call狀態(tài)跟蹤者GsmCallTracker / 51
4.2.10 RIL消息的出入口RIL.java / 52
4.2.11 啟動(dòng)通話主界面InCallScreen / 53
4.2.12 撥號(hào)流程總結(jié) / 53
4.3 電話被動(dòng)接收來電流程分析 / 55
4.3.1 Android虛擬設(shè)備模擬接收來電 / 56
4.3.2 RegistrantList消息處理機(jī)制 / 57
4.3.3 GsmCallTracker響應(yīng)RIL的Call狀態(tài)變化通知 / 60
4.3.4 RIL.java的getCurrentCalls方法 / 60
4.3.5 GsmCallTracker響應(yīng)消息通知 / 61
4.3.6 handlePollCalls發(fā)出來電通知 / 61
4.3.7 GSMPhone的通知方法notifyNewRingingConnection / 62
4.3.8 CallManager響應(yīng)來電消息通知 / 62
4.3.9 CallNotifier響應(yīng)來電通知 / 63
4.3.10 InCallScreen展現(xiàn)來電界面 / 64
4.3.11 來電流程總結(jié) / 65
4.4 通話關(guān)鍵流程 / 66
4.4.1 建立Android通話模型 / 67
4.4.2 AT命令發(fā)送流程 / 68
4.4.3 通話狀態(tài)變化流程 / 69
4.4.4 本地主動(dòng)掛斷通話流程 / 70
4.4.5 遠(yuǎn)端斷開通話連接流程 / 72
4.5 本章小結(jié) / 73
第5章 深入解析Telephony通話應(yīng)用機(jī)制 / 74
5.1 Phone應(yīng)用的關(guān)鍵代碼解析 / 74
5.2 認(rèn)識(shí)通話主界面InCallScreen / 75
5.2.1 InCallScreen中的主要方法 / 76
5.2.2 單例模式的Activity通話界面 / 76
5.2.3 Layout布局說明 / 77
5.3 通話主界面InCallScreen / 78
5.3.1 onCreate—運(yùn)行Activity / 78
5.3.2 onNewIntent—單例InCallScreen加載入口 / 80
5.3.3 internalResolveIntent—進(jìn)入InCallScreen處理Intent的唯一方法 / 81
5.3.4 onResume—顯示InCallScreen通話界面 / 82
5.3.5 handleMessage—Handler消息響應(yīng)方法 / 84
5.3.6 onSuppServiceFailed—顯示通話服務(wù)失敗提示信息 / 85
5.3.7 updateScreen—更新通話界面 / 86
5.3.8 onDisconnect—斷開通話連接 / 88
5.3.9 handleOnscreenButtonClick—響應(yīng)通話控制按鈕點(diǎn)擊事件 / 90
5.3.10 InCallScreen通話界面運(yùn)行機(jī)制總結(jié) / 91
5.4 通話信息展示CallCard / 92
5.4.1 兩路通話布局View控件 / 92
5.4.2 updateState—更新CallCard / 93
5.4.3 displayMainCallStatus—顯示/更新第一路通話信息 / 95
5.4.4 displayOnHoldCallStatus—顯示/更新第二路通話信息 / 97
5.4.5 修改通話信息展示的思路及原則 / 98
5.5  通話控制InCallTouchUi / 99
5.5.1 View布局控件 / 99
5.5.2 updateState—更新InCallTouchUi / 101
5.5.3 MultiWaveView—來電控制接聽、拒接界面 / 102
5.5.4 HeadSet—響應(yīng)免提事件 / 103
5.5.5 修改來電界面的思路及原則 / 104
5.6 通話功能中必不可少的DTMF / 105
5.6.1 什么是DTMF / 105
5.6.2 DTMFTwelveKeyDialer的布局 / 105
5.6.3 如何顯示DTMF界面 / 106
5.6.4 Tone音發(fā)送流程 / 106
5.7 Phone應(yīng)用的加載入口PhoneApp類 / 108
5.7.1 PhoneApp類屬性及方法 / 108
5.7.2 onCreate—PhoneApp應(yīng)用加載入口 / 109
5.7.3 PowerManager—PhoneApp電源管理 / 110
5.7.4 Sensor—PhoneApp感應(yīng)器的應(yīng)用 / 112
5.7.5 MediaButtonBroadcastReceiver—接收耳機(jī)HOOK鍵廣播事件 / 115
5.7.6 PhoneAppBroadcastReceiver—接收Phone應(yīng)用雜項(xiàng)廣播事件 / 116
5.8 Handler消息處理的幕后工作者CallNotifier / 118
5.8.1 CallNotifier的本質(zhì) / 118
5.8.2 Handler消息注冊(cè)和響應(yīng)機(jī)制 / 119
5.8.3 onNewRingingConnection—接收到新來電的幕后處理 / 119
5.8.4 onPhoneStateChanged—通話狀態(tài)變化的幕后處理 / 121
5.8.5 onDisconnect—通話連接斷開的幕后處理 / 122
5.9 本章小結(jié) / 124
第6章 手機(jī)通話功能框架層實(shí)現(xiàn)機(jī)制 / 125
6.1 Telephony Frameworks層解析 / 125
6.1.1 通話功能相關(guān)代碼文件 / 125
6.1.2 通話功能關(guān)鍵類 / 126
6.1.3 Telephony通信能力模型 / 127
6.2 GSMPhone對(duì)象詳解 / 128
6.2.1 GSMPhone類層次繼承關(guān)系 / 128
6.2.2 GSMPhone類代碼結(jié)構(gòu)解析 / 129
6.2.3 PhoneFactory工廠方法實(shí)現(xiàn)類 / 130
6.2.4 PhoneProxy代理模式實(shí)現(xiàn)類 / 131
6.2.5 GSMPhone類的組合邏輯關(guān)系 / 132
6.2.6 GSMPhone類的Handler消息處理機(jī)制 / 133
6.2.7 GSMPhone類通話管理實(shí)現(xiàn)機(jī)制 / 136
6.3 CallTracker運(yùn)行機(jī)制 / 137
6.3.1 GsmCallTracker類代碼結(jié)構(gòu)解析 / 137
6.3.2 GsmCallTracker的Handler消息處理機(jī)制 / 139
6.3.3 GsmCallTracker與RIL對(duì)象的交互機(jī)制 / 142
6.4 以GsmCall為核心的通話管理模型 / 145
6.4.1 GsmCall類代碼結(jié)構(gòu)解析 / 146
6.4.2 GsmConnection類代碼結(jié)構(gòu)解析 / 147
6.4.3 DriverCall與GsmCall、GsmConnection的關(guān)系 / 149
6.5 GsmCallTracker類的 handlePollCalls方法處理邏輯 / 153
6.5.1 初始化操作 / 153
6.5.2 更新通話相關(guān)信息 / 154
6.5.3 根據(jù)最新的通話狀態(tài)發(fā)出通知 / 158
6.5.4 更新手機(jī)狀態(tài) / 158
6.6 GsmCallTracker通話連接斷開的處理機(jī)制 / 160
6.6.1 本地主動(dòng)掛斷通話的處理機(jī)制 / 160
6.6.2 遠(yuǎn)端斷開通話連接的處理機(jī)制 / 162
6.7 Android虛擬設(shè)備上驗(yàn)證GSM制式手機(jī)的通話模型 / 164
6.7.1 增加日志輸出 / 164
6.7.2 運(yùn)行Android虛擬設(shè)備并分析日志 / 166
6.8 通話大管家CallManager / 168
6.8.1 CallManager的本質(zhì) / 168
6.8.2 Handler消息注冊(cè)及運(yùn)行機(jī)制 / 169
6.8.3 如何獲取通話基本信息 / 170
6.9 通話計(jì)時(shí)實(shí)例分析 / 171
6.9.1 記錄通話的開始時(shí)間 / 171
6.9.2 記錄通話的結(jié)束時(shí)間 / 171
6.9.3 Phone應(yīng)用計(jì)算通話時(shí)長(zhǎng) / 171
6.10  Handler消息處理機(jī)制 / 173
6.10.1 Handler消息的注冊(cè)過程 / 173
6.10.2 Handler消息的接收和響應(yīng)過程 / 174
6.11 實(shí)戰(zhàn)—來電防火墻 / 175
6.11.1 應(yīng)用原理分析 / 175
6.11.2 在onNewRingingConnection方法加入攔截請(qǐng)求 / 176
6.12 本章小結(jié) / 176
第三部分 Telephony通信功能
第7章 網(wǎng)絡(luò)服務(wù)狀態(tài)運(yùn)行機(jī)制 / 180
7.1 什么是ServiceState / 180
7.2 初識(shí)ServiceState實(shí)體類 / 180
7.2.1 ServiceState類的實(shí)質(zhì) / 181
7.2.2 ServiceState類關(guān)鍵常量及屬性 / 181
7.2.3 ServiceState類關(guān)鍵方法 / 182
7.3 ServiceStateTracker運(yùn)行機(jī)制詳解 / 183
7.3.1 ServiceStateTracker抽象類為核心的類圖 / 184
7.3.2 ServiceStateTracker代碼結(jié)構(gòu) / 184
7.3.3 ServiceStateTracker的Handler消息處理機(jī)制 / 186
7.3.4 ServiceStateTracker與RIL對(duì)象的交互機(jī)制 / 189
7.4 handlePollStateResult方法處理邏輯 / 192
7.4.1 RIL返回查詢結(jié)果的異常判斷和處理 / 192
7.4.2 處理4個(gè)不同網(wǎng)絡(luò)服務(wù)查詢返回的結(jié)果 / 192
7.4.3 用pollStateDone方法完成收尾工作 / 195
7.5 ServiceState最佳實(shí)踐 / 197
7.5.1 獲取運(yùn)營(yíng)商信息 / 197
7.5.2 通知欄手機(jī)信號(hào)實(shí)時(shí)變化 / 198
7.6 實(shí)戰(zhàn)—飛行模式的實(shí)現(xiàn) / 200
7.6.1 飛行模式的設(shè)置入口 / 200
7.6.2 Radio無線通信模塊的開啟或關(guān)閉 / 202
7.7 本章小結(jié) / 203
第8章 Android手機(jī)上網(wǎng)實(shí)現(xiàn)機(jī)制 / 204
8.1 Android網(wǎng)絡(luò)整體結(jié)構(gòu) / 204
8.2 什么是DataConnection / 205
8.2.1 DataConnection類定義及子類 / 205
8.2.2 DataConnection類關(guān)鍵屬性 / 206
8.2.3 DataConnection類的方法 / 207
8.2.4 5個(gè)數(shù)據(jù)連接對(duì)象的狀態(tài)轉(zhuǎn)換 / 207
8.3 StateMachine狀態(tài)機(jī) / 208
8.3.1 State設(shè)計(jì)模式 / 209
8.3.2 StateMachine核心類 / 209
8.3.3 StateMachine運(yùn)行機(jī)制 / 210
8.3.4 DataConnection使用State模式的運(yùn)行機(jī)制 / 211
8.4 什么是APN / 212
8.4.1 APN配置關(guān)鍵字段 / 212
8.4.2 Android支持的APN類型 / 213
8.4.3 如何在Android中新增APN配置 / 213
8.5 開機(jī)自動(dòng)建立default默認(rèn)數(shù)據(jù)連接 / 215
8.5.1 如何查看手機(jī)上網(wǎng)的基本參數(shù)配置 / 215
8.5.2 初始化ApnContext / 216
8.5.3 創(chuàng)建DataConnection數(shù)據(jù)連接 / 219
8.5.4 激活DataConnection數(shù)據(jù)連接 / 222
8.6 DataConnectionTracker運(yùn)行機(jī)制 / 226
8.6.1 初始化ApnContext操作 / 227
8.6.2 開機(jī)建立default默認(rèn)的數(shù)據(jù)連接 / 228
8.6.3 關(guān)閉數(shù)據(jù)連接 / 229
8.6.4 循環(huán)更新網(wǎng)絡(luò)連接狀態(tài)信息 / 230
8.6.5 APN數(shù)據(jù)庫(kù)配置信息變化的觀察者 / 231
8.7 獲取Android手機(jī)上網(wǎng)數(shù)據(jù)包 / 232
8.7.1 使用tcpdump工具抓取TCP/IP數(shù)據(jù)包 / 232
8.7.2 使用Wireshark軟件分析TCP/IP數(shù)據(jù)包 / 232
8.8 MMS彩信數(shù)據(jù)連接的實(shí)現(xiàn) / 233
8.8.1 建立和關(guān)閉彩信數(shù)據(jù)連接 / 233
8.8.2 如何支持多種類型網(wǎng)絡(luò)連接 / 234
8.9 實(shí)戰(zhàn)—手機(jī)上網(wǎng)數(shù)據(jù)總開關(guān)的實(shí)現(xiàn) / 235
8.10 本章小結(jié) / 235
第9章 深入解析短信發(fā)送和接收流程 / 237
9.1 MMS應(yīng)用主要源代碼匯總及簡(jiǎn)要說明 / 237
9.2 主動(dòng)發(fā)送短信流程分析 / 238
9.2.1 進(jìn)入短信會(huì)話列表界面 / 238
9.2.2 短信編輯界面 / 239
9.2.3 SmsMessageSender短信發(fā)送處理邏輯 / 241
9.2.4 Telephony Frameworks層中的SmsManager類 / 243
9.2.5 IccSmsInterfaceManager服務(wù)發(fā)送短信 / 244
9.2.6 SMSDispatcher短信分發(fā)器 / 245
9.2.7 主動(dòng)發(fā)送短信流程總結(jié) / 246
9.3 短信發(fā)送狀態(tài)相關(guān)處理機(jī)制 / 248
9.3.1 如何判斷短信是否成功發(fā)送到短信中心 / 248
9.3.2 如何判斷短信接收方已經(jīng)成功收取短信 / 250
9.4 短信接收流程分析 / 252
9.4.1 短信接收的開始 / 252
9.4.2 進(jìn)入短信分發(fā)器SMSDispatcher / 253
9.4.3 接收并處理新短信Broadcast廣播 / 254
9.4.4 短信接收流程總結(jié) / 254
9.5 彩信發(fā)送和接收關(guān)鍵流程 / 255
9.5.1 彩信傳輸過程中的關(guān)鍵類 / 255
9.5.2 TransactionService為核心的彩信傳輸機(jī)制 / 257
9.5.3 Transaction對(duì)象執(zhí)行彩信傳輸 / 259
9.5.4 基于WAP PUSH的彩信接收與下載 / 260
9.6 本章小結(jié) / 261
第四部分 深入解析Android RIL
第10章 Android RIL框架結(jié)構(gòu)及RILJ運(yùn)行機(jī)制 / 264
10.1 Android RIL關(guān)鍵處理流程  / 264
10.1.1 Android RIL框架結(jié)構(gòu) / 264
10.1.2 Android RIL的數(shù)據(jù)交互 / 265
10.2 認(rèn)識(shí)RILJ / 265
10.2.1 RILJ核心類圖 / 265
10.2.2 RILJ關(guān)鍵屬性 / 266
10.2.3 RILJ關(guān)鍵方法 / 267
10.2.4 RILJ運(yùn)行機(jī)制 / 268
10.3 認(rèn)識(shí)RILRequest類 / 269
10.3.1 RILRequest類的關(guān)鍵屬性 / 269
10.3.2 RILRequest類的方法 / 269
10.4 解析RILJ發(fā)出RIL請(qǐng)求流程 / 271
10.4.1 send方法發(fā)送Handler消息 / 271
10.4.2 RILSender接收和處理Handler消息 / 272
10.5 解析RILJ接收Response消息處理流程 / 273
10.5.1 RILReceiver內(nèi)部類運(yùn)行機(jī)制 / 273
10.5.2 Solicited Response消息處理方法processSolicited / 276
10.5.3 UnSolicited Response消息處理方法processUnsolicited / 279
10.6 本章小結(jié) / 280
第11章 RILC系統(tǒng)結(jié)構(gòu)及LibRIL運(yùn)行機(jī)制 / 281
11.1 RILC主要代碼目錄結(jié)構(gòu) / 281
11.2 解析RILC運(yùn)行機(jī)制 / 282
11.2.1 RILC啟動(dòng)過程 / 283
11.2.2 RILC運(yùn)行過程 / 285
11.3 初識(shí)RILC中的運(yùn)行環(huán)境LibRIL / 285
11.3.1 LibRIL主要文件及作用 / 285
11.3.2 重點(diǎn)結(jié)構(gòu)體說明 / 286
11.4 LibRIL運(yùn)行環(huán)境加載過程 / 288
11.4.1 開啟ril_event事件監(jiān)聽入口RIL_startEventLoop / 288
11.4.2 RIL_register函數(shù)引入三方RIL_RadioFunctions / 290
11.5 運(yùn)行狀態(tài)中ril_event事件處理機(jī)制 / 291
11.5.1 認(rèn)識(shí)ril_event結(jié)構(gòu)體 / 291
11.5.2 RIL事件生命周期控制的處理函數(shù) / 292
11.5.3 ril_event_loop處理機(jī)制 / 294
11.6 詳解LibRIL運(yùn)行機(jī)制 / 296
11.6.1 RILJ與LibRIL建立Socket連接過程 / 296
11.6.2 Solicited消息的交互流程和處理機(jī)制 / 297
11.7 本章小結(jié) / 302
第12章 Reference-RIL運(yùn)行框架 / 303
12.1 Reference-RIL運(yùn)行機(jī)制 / 303
12.1.1 RIL_Init函數(shù)初始化Reference-RIL / 303
12.1.2 onRequest接收LibRIL的請(qǐng)求調(diào)用 / 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層運(yùn)行框架和機(jī)制總結(jié) / 311
12.3.1 總結(jié)Solicited消息處理流程 / 312
12.3.2 總結(jié)UnSolicited消息處理流程 / 313
12.4 本章小結(jié) / 314
第五部分 系統(tǒng)服務(wù)
第13章 Telephony提供的系統(tǒng)服務(wù) / 316
13.1 System Service系統(tǒng)服務(wù)類圖 / 316
13.2 詳解PhoneInterfaceManager實(shí)現(xiàn)機(jī)制 / 317
13.2.1 ITelephony.aidl接口定義 / 318
13.2.2 PhoneInterfaceManager服務(wù)創(chuàng)建過程 / 318
13.2.3 PhoneInterfaceManager服務(wù)使用實(shí)例分析 / 318
13.3 詳解TelephonyRegistry實(shí)現(xiàn)機(jī)制 / 319
13.3.1 系統(tǒng)服務(wù)的創(chuàng)建入口 / 320
13.3.2 TelephonyRegistry關(guān)鍵方法 / 320
13.3.3 listen方法處理邏輯 / 320
13.3.4 notifyCallState方法發(fā)出通話狀態(tài)變化通知 / 321
13.3.5 觸發(fā)TelephonyRegistry發(fā)出通知機(jī)制 / 322
13.3.6 TelephonyRegistry系統(tǒng)服務(wù)使用實(shí)例分析 / 323
13.4 簡(jiǎn)述TelephonyManager實(shí)現(xiàn)機(jī)制 / 324
13.5 本章小結(jié) / 326

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) www.dappsexplained.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)