注冊(cè) | 登錄讀書(shū)好,好讀書(shū),讀好書(shū)!
讀書(shū)網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書(shū)科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)軟件與程序設(shè)計(jì)程序設(shè)計(jì)綜合Android深度探索·卷2:系統(tǒng)應(yīng)用源代碼分析與ROM定制

Android深度探索·卷2:系統(tǒng)應(yīng)用源代碼分析與ROM定制

Android深度探索·卷2:系統(tǒng)應(yīng)用源代碼分析與ROM定制

定 價(jià):¥89.00

作 者: 李寧 著
出版社: 人民郵電出版社
叢編項(xiàng):
標(biāo) 簽: 程序設(shè)計(jì) 計(jì)算機(jī)/網(wǎng)絡(luò) 移動(dòng)開(kāi)發(fā)

購(gòu)買這本書(shū)可以去


ISBN: 9787115367945 出版時(shí)間: 2015-01-01 包裝: 平裝
開(kāi)本: 16開(kāi) 頁(yè)數(shù): 496 字?jǐn)?shù):  

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

  全書(shū)分為2部分。第一部分主要介紹了Android源代碼和Linux內(nèi)核源代碼的下載和編譯,Root權(quán)限的提取,Android ROM的制作和刷機(jī),Recovery的定制等。第二部分主要分析了主要Android系統(tǒng)應(yīng)用的實(shí)現(xiàn)原理和源代碼。這些系統(tǒng)應(yīng)用包括Android應(yīng)用安裝和卸載管理、系統(tǒng)設(shè)置、系統(tǒng)設(shè)置內(nèi)容提供者、電話與聯(lián)系人管理、短信與彩信管理、Launcher2和NFC后臺(tái)服務(wù)程序。通過(guò)對(duì)這些Android系統(tǒng)應(yīng)用的源代碼分析,會(huì)使讀者定制出更完美的Android ROM。本書(shū)主要采用了CM10.1(Android4.2.2)源代碼進(jìn)行講解和分析,使讀者可以系統(tǒng)和完整地掌握定制Android ROM所需要的最新技術(shù)。論讀者是想找一份好工作,還是想滿足自己的Geek情節(jié),本書(shū)都是您的首選。本書(shū)適合具備一定的開(kāi)發(fā)經(jīng)驗(yàn)(最好有Java或C/C++開(kāi)發(fā)經(jīng)驗(yàn))、想學(xué)習(xí)Android和Linux底層開(kāi)發(fā)的程序員,具備一定的Android開(kāi)發(fā)經(jīng)驗(yàn),想從事底層開(kāi)發(fā)的編程愛(ài)好者使用;也適合作為相關(guān)培訓(xùn)學(xué)校的Android底層開(kāi)發(fā)培訓(xùn)教材。

作者簡(jiǎn)介

  李寧,東北大學(xué)碩士,IT作家、技術(shù)顧問(wèn)、Geek。曾出版《Android深度探索(卷1):HAL與驅(qū)動(dòng)開(kāi)發(fā)》、《Android開(kāi)發(fā)權(quán)威指南》、《Android高薪之路:Android程序員面試寶典》等暢銷書(shū)。Blog:http://blog.csdn.net/nokiaguy

圖書(shū)目錄

第1章 學(xué)習(xí)前的準(zhǔn)備工作 1
1.1 安裝和配置JDK 1
1.2 安裝和配置Android開(kāi)發(fā)環(huán)境 1
1.3 官方Android源代碼 2
1.3.1 下載Android源代碼 2
1.3.2 編譯Android源代碼 3
1.4 官方Linux內(nèi)核源代碼 5
1.4.1 Linux內(nèi)核支持的Android設(shè)備 5
1.4.2 下載Linux內(nèi)核源代碼 5
1.4.3 查看Linux內(nèi)核的分支 7
1.4.4 看看Google那幫家伙在做什么 8
1.4.5 獲取Linux內(nèi)核的配置文件 10
1.4.6 安裝交叉編譯器 11
1.4.7 編譯Linux內(nèi)核源代碼 12
1.5Cyanogenmod(CM)源代碼 12
1.5.1 什么是CM 12
1.5.2 CM支持哪些Android設(shè)備 13
1.5.3與Android設(shè)備對(duì)應(yīng)的Codename和CM版本 14
1.5.4 下載CM Android源代碼 15
1.5.5 下載經(jīng)過(guò)CM適配的Linux內(nèi)核源代碼 17
1.5.6 編譯Android源代碼生成Recovery ROM 17
1.5.7 單獨(dú)編譯CM Linux內(nèi)核源代碼 21
1.5.8 刷機(jī)!刷機(jī)! 22
1.5.9 下載現(xiàn)成的CM ROM 23
1.6小結(jié) 24
第2章 提取ROOT權(quán)限 26
2.1 什么是ROM 26
2.2 ROM的種類 27
2.3刷官方的ROM 27
2.3.1 下載官方的ROM 28
2.3.2 用人值守方式刷ROM 28
2.3.3 分別刷ROM包含的各種鏡像文件 29
2.4 Android手機(jī)獲取ROOT權(quán)限的必要性 31
2.5 提取ROOT權(quán)限的原理 32
2.6 用極客的方式提取ROOT權(quán)限 33
2.6.1 提取ROOT權(quán)限的步驟 33
2.6.2 需要一個(gè)很酷的recovery 34
2.6.3 su命令源代碼分析 36
2.6.4 制作第一個(gè)Recovery刷機(jī)包(編寫(xiě)updater-script腳本文件) 39
2.6.5 首次通過(guò)DIY方式提取ROOT權(quán)限 43
2.6.6 上傳Android應(yīng)用到/system/app目錄 43
2.7 小結(jié) 44
第3章 Root權(quán)限的安全屏障 45
3.1 通過(guò)su提取Root權(quán)限的安全隱患 45
3.2 Android應(yīng)用申請(qǐng)Root權(quán)限 46
3.3 Superuser.a(chǎn)pk為什么不見(jiàn)了 48
3.4 申請(qǐng)Root權(quán)限為什么失靈了 50
3.5CM ROM如何為Root權(quán)限增加安全屏障 52
3.6 ADB Shell動(dòng)作管理命令(am) 55
3.6.1 顯示窗口(Activity) 55
3.6.2發(fā)送廣播(Broadcast) 56
3.6.3 開(kāi)始服務(wù)(Service) 57
3.7su實(shí)現(xiàn)原理及源代碼分析 57
3.7.1 su進(jìn)行Root授權(quán)的處理流程 57
3.7.2 初始化調(diào)用者數(shù)據(jù) 64
3.7.3 初始化路徑 66
3.7.4 動(dòng)態(tài)宏定義 67
3.7.5 檢測(cè)數(shù)據(jù)庫(kù) 69
3.7.6 創(chuàng)建LocalSocket服務(wù) 70
3.7.7 顯示“Root授權(quán)”窗口 72
3.7.8 等待Superuser連接LocalSocket服務(wù) 73
3.7.9 向Superuser傳輸調(diào)用者信息 74
3.7.10 接收用戶選擇的“Root授權(quán)”策略 75
3.7.11 允許和拒絕“Root授權(quán)” 75
3.8 Superuser的實(shí)現(xiàn)原理與源代碼分析 77
3.8.1 “Root授權(quán)”警告窗口的處理流程 77
3.8.2 設(shè)置“Root授權(quán)”窗口的控件 80
3.8.3 獲取“Root授權(quán)”持續(xù)時(shí)間 83
3.8.4 處理“Root授權(quán)”策略 85
3.8.5 讀取Su協(xié)議數(shù)據(jù) 86
3.8.6獲取和設(shè)置“調(diào)用者”信息 88
3.9 小結(jié) 90
第4章 ROM定制 91
4.1 刷機(jī)的那些事 91
4.1.1 Android刷機(jī)的本質(zhì) 91
4.1.2 制作ROM的不同層次 93
4.1.3 為什么要刷機(jī) 94
4.1.4 刷機(jī)帶來(lái)的風(fēng)險(xiǎn)及其預(yù)防措施 95
4.2在官方ROM的基礎(chǔ)上定制各種鏡像 96
4.2.1 修改系統(tǒng)鏡像(system.img) 96
4.2.2 定制開(kāi)機(jī)動(dòng)畫(huà) 99
4.2.3 用戶數(shù)據(jù)鏡像(userdata.img) 103
4.2.4 內(nèi)存磁盤(pán)鏡像(ramdisk.img) 106
4.2.5Linux內(nèi)核鏡像(boot.img) 108
4.2.6 制作已經(jīng)有ROOT權(quán)限的ROM 109
4.2.7 Recovery鏡像(recovery.img) 110
4.2.8 緩存鏡像(cache.img) 111
4.2.9 制作完美的Bootloader ROM 112
4.3 直接從CM源代碼制作ROM 114
4.3.1 制作Bootloader ROM 115
4.3.2制作Recovery ROM 116
4.4 Edify語(yǔ)言 120
4.4.1 Edify語(yǔ)言概述 120
4.4.2 測(cè)試Edity腳本(updater-script) 120
4.4.3 Edity函數(shù)詳解 122
4.4.4 Edity語(yǔ)言的實(shí)現(xiàn)原理 131
4.5集成Google Services Framework和Google Play 134
4.6在CM ROM中集成第三方APK程序 135
4.6.1為什么不能直接復(fù)制APK和ODEX文件 135
4.6.2 校驗(yàn)odex文件需要依賴哪些Library 136
4.6.3 合并APK和ODEX文件 136
4.7 小結(jié) 139
第5章 Recovery深度分析與定制 140
5.1 什么是Recovery 140
5.2 Clockworkmod Recovery源代碼解析 142
5.2.1如何分析Recovery源代碼 142
5.2.2 顯示主菜單 144
5.2.3 切換不同的菜單項(xiàng) 146
5.2.4 選擇菜單項(xiàng) 148
5.3Recovery支持的各種操作 150
5.3.1 重啟和關(guān)閉Android設(shè)備 150
5.3.2 從SD卡刷ROM 151
5.3.3 使用sideload模式刷ROM 157
5.3.4 清除指定文件系統(tǒng)中的數(shù)據(jù) 158
5.3.5 備份與恢復(fù) 161
5.3.6 掛載(mount)、卸載(umount)和格式化(format)文件系統(tǒng) 167
5.4添加自己的Recovery菜單項(xiàng) 170
5.5 漢化Recovery 172
5.5.1 漢化Recovery的原理和步驟 172
5.5.2 初始化字體 173
5.5.3 繪制中文字符 175
5.6小結(jié) 176
第6章Android系統(tǒng)應(yīng)用的開(kāi)發(fā)與測(cè)試 177
6.1 什么是Android系統(tǒng)應(yīng)用 177
6.2為什么要研究Android系統(tǒng)應(yīng)用 178
6.3如何編寫(xiě)Android系統(tǒng)應(yīng)用 178
6.4 分析第一個(gè)Android系統(tǒng)應(yīng)用:計(jì)算器 180
6.4.1 計(jì)算器應(yīng)用(Calculator)的基本結(jié)構(gòu) 181
6.4.2 編譯、測(cè)試和調(diào)試Calculator 183
6.4.3 允許其他Android應(yīng)用通過(guò)Calculator計(jì)算表達(dá)式 184
6.5 小結(jié) 186
第7章 安裝與卸載應(yīng)用程序(PackageInstaller) 187
7.1 分析源代碼的第一步應(yīng)該做什么 187
7.2 尋找PackageInstaller的突破口 190
7.3安裝和卸載Android應(yīng)用的全部方式 192
7.4 安裝Android應(yīng)用前的校驗(yàn) 193
7.4.1 安裝Android應(yīng)用的初始化工作 193
7.4.2 顯示校驗(yàn)窗口 197
7.4.3 獲取Android應(yīng)用的權(quán)限列表 201
7.5開(kāi)始安裝應(yīng)用程序 204
7.5.1 PackageInstaller的安裝原理 204
7.5.2 靜默安裝Android應(yīng)用 211
7.6 卸載Android應(yīng)用 214
7.6.1 PackageInstaller卸載Android應(yīng)用前的確認(rèn) 214
7.6.2 卸載Android應(yīng)用的原理 217
7.6.3 靜默卸載Android應(yīng)用 220
7.7小結(jié) 222
第8章 系統(tǒng)設(shè)置(一) 224
8.1 為系統(tǒng)設(shè)置添加新功能 224
8.1.1 系統(tǒng)設(shè)置的編譯與權(quán)限 224
8.1.2修改開(kāi)機(jī)動(dòng)畫(huà) 226
8.1.3 尋找Settings的入口點(diǎn) 231
8.1.4 為Settings添加新的功能項(xiàng) 233
8.1.5 遷移修改開(kāi)機(jī)動(dòng)畫(huà)的窗口類 235
8.2Wi-Fi 236
8.2.1 如何為設(shè)置項(xiàng)添加Switch控件 237
8.2.2 為“修改開(kāi)機(jī)動(dòng)畫(huà)”設(shè)置項(xiàng)添加Switch控件 242
8.2.3“關(guān)閉/打開(kāi)”Wi-Fi 245
8.2.4 系統(tǒng)信息與SQLite的WAL模式 248
8.2.5禁止飛行模式下單獨(dú)開(kāi)啟Wi-Fi

本目錄推薦

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