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

Android系統(tǒng)源代碼情景分析

Android系統(tǒng)源代碼情景分析

定 價(jià):¥109.00

作 者: 羅升陽 著
出版社: 電子工業(yè)出版社
叢編項(xiàng):
標(biāo) 簽: 移動開發(fā)

ISBN: 9787121181085 出版時(shí)間: 2012-09-29 包裝: 平裝
開本: 16開 頁數(shù): 840頁 字?jǐn)?shù):  

內(nèi)容簡介

  在內(nèi)容上,《Android系統(tǒng)源代碼情景分析(含CD光盤1張)》結(jié)合使用情景,全面、深入、細(xì)致地分析了Android系統(tǒng)的源代碼,涉及到Linux內(nèi)核層、硬件抽象層(HAL)、運(yùn)行時(shí)庫層(Runtime)、應(yīng)用程序框架層(Application Framework)以及應(yīng)用程序?qū)樱ˋpplication)。 在組織上,《Android系統(tǒng)源代碼情景分析(含CD光盤1張)》將上述內(nèi)容劃分為初識Android系統(tǒng)、Android專用驅(qū)動系統(tǒng)和Android應(yīng)用程序框架三大篇。初識Android系統(tǒng)篇介紹了參考書籍、基礎(chǔ)知識以及實(shí)驗(yàn)環(huán)境搭建;Android專用驅(qū)動系統(tǒng)篇介紹了Logger日志驅(qū)動程序、Binder進(jìn)程間通信驅(qū)動程序以及Ashmem匿名共享內(nèi)存驅(qū)動程序;Android應(yīng)用程序框架篇從組件、進(jìn)程、消息以及安裝四個(gè)維度對Android應(yīng)用程序的框架進(jìn)行了深入的剖析。 通過上述內(nèi)容及其組織,本書能使讀者既能從整體上把握Android系統(tǒng)的層次結(jié)構(gòu),又能從細(xì)節(jié)上掌握每一個(gè)層次的要點(diǎn)。

作者簡介

  羅升陽,1984年出生,2007年畢業(yè)于浙江大學(xué)計(jì)算機(jī)系,取得學(xué)士學(xué)位,2010年畢業(yè)于上海交通大學(xué)計(jì)算機(jī)系,取得碩士學(xué)位。畢業(yè)后一直從事于互聯(lián)網(wǎng)軟件開發(fā),并且致力于移動平臺的研究,特別是對Android平臺有深入的理解和研究。在國內(nèi)知名IT技術(shù)社區(qū)CSDN上發(fā)表了數(shù)十篇高質(zhì)量的Android系統(tǒng)原創(chuàng)性文章,并且開設(shè)博客專欄:《老羅的Android之旅》,積極與網(wǎng)友互動,深受大家喜愛,訪問量一直居于前茅。

圖書目錄

第1篇 初識Android系統(tǒng)第1章 準(zhǔn)備知識................................................................21.1 Linux內(nèi)核參考書籍..................................................21.2 Android應(yīng)用程序參考書籍....................................... 31.3 下載、編譯和運(yùn)行Android源代碼........................... 31.3.1 下載Android源代碼...........................................41.3.2 編譯Android源代碼...........................................41.3.3 運(yùn)行Android模擬器...........................................51.4 下載、編譯和運(yùn)行Android內(nèi)核源代碼............................................................61.4.1 下載Android內(nèi)核源代碼................................... 61.4.2 編譯Android內(nèi)核源代碼................................... 71.4.3 運(yùn)行Android模擬器...........................................81.5 開發(fā)第一個(gè)Android應(yīng)用程序................................... 81.6 單獨(dú)編譯和打包Android應(yīng)用程序模塊..........................................................111.6.1 導(dǎo)入單獨(dú)編譯模塊的mmm命令...............................................................111.6.2 單獨(dú)編譯Android應(yīng)用程序模塊...............................................................121.6.3 重新打包Android系統(tǒng)鏡像文件...............................................................12第2章 硬件抽象層.......................................................132.1 開發(fā)Android硬件驅(qū)動程序..................................... 142.1.1 實(shí)現(xiàn)內(nèi)核驅(qū)動程序模塊.................................. 142.1.2 修改內(nèi)核Kconfig文件...................................... 212.1.3 修改內(nèi)核Makefile文件..................................... 222.1.4 編譯內(nèi)核驅(qū)動程序模塊.................................. 222.1.5 驗(yàn)證內(nèi)核驅(qū)動程序模塊.................................. 232.2 開發(fā)C可執(zhí)行程序驗(yàn)證Android硬件驅(qū)動程序...............................................242.3 開發(fā)Android硬件抽象層模塊................................. 262.3.1 硬件抽象層模塊編寫規(guī)范............................... 262.3.2 編寫硬件抽象層模塊接口............................... 292.3.3 硬件抽象層模塊的加載過程........................... 332.3.4 處理硬件設(shè)備訪問權(quán)限問題........................... 362.4 開發(fā)Android硬件訪問服務(wù)..................................... 382.4.1 定義硬件訪問服務(wù)接口.................................. 382.4.2 實(shí)現(xiàn)硬件訪問服務(wù)..........................................392.4.3 實(shí)現(xiàn)硬件訪問服務(wù)的JNI方法.......................... 402.4.4 啟動硬件訪問服務(wù)..........................................432.5 開發(fā)Android應(yīng)用程序來使用硬件訪問服務(wù)..................................................44第3章 智能指針...............................................................493.1 輕量級指針.............................................................503.1.1 實(shí)現(xiàn)原理分析................................................503.1.2 應(yīng)用實(shí)例分析................................................533.2 強(qiáng)指針和弱指針.....................................................543.2.1 強(qiáng)指針的實(shí)現(xiàn)原理分析.................................. 553.2.2 弱指針的實(shí)現(xiàn)原理分析.................................. 613.2.3 應(yīng)用實(shí)例分析................................................67第2篇 Android專用驅(qū)動系統(tǒng)第4章 Logger日志系統(tǒng).............................................744.1 Logger日志格式.......................................................754.2 Logger日志驅(qū)動程序..............................................764.2.1 基礎(chǔ)數(shù)據(jù)結(jié)構(gòu)................................................774.2.2 日志設(shè)備的初始化過程.................................. 784.2.3 日志設(shè)備文件的打開過程............................... 834.2.4 日志記錄的讀取過程...................................... 844.2.5 日志記錄的寫入過程...................................... 884.3 運(yùn)行時(shí)庫層日志庫.................................................934.4 C/C++日志寫入接口.............................................1004.5 Java日志寫入接口................................................1044.6 Logcat工具分析.....................................................1104.6.1 基礎(chǔ)數(shù)據(jù)結(jié)構(gòu)..............................................1114.6.2 初始化過程..................................................1154.6.3 日志記錄的讀取過程.................................... 1274.6.4 日志記錄的輸出過程.................................... 132第5章 Binder進(jìn)程間通信系統(tǒng)............................... 1445.1 Binder驅(qū)動程序.....................................................1455.1.1 基礎(chǔ)數(shù)據(jù)結(jié)構(gòu)..............................................1465.1.2 Binder設(shè)備的初始化過程.............................. 1645.1.3 Binder設(shè)備文件的打開過程.......................... 1655.1.4 Binder設(shè)備文件的內(nèi)存映射過程............................................................1665.1.5 內(nèi)核緩沖區(qū)管理...........................................1735.2 Binder進(jìn)程間通信庫.............................................1835.3 Binder進(jìn)程間通信應(yīng)用實(shí)例................................. 1885.4 Binder對象引用計(jì)數(shù)技術(shù)..................................... 1965.4.1 Binder本地對象的生命周期.......................... 1975.4.2 Binder實(shí)體對象的生命周期.......................... 2015.4.3 Binder引用對象的生命周期.......................... 2045.4.4 Binder代理對象的生命周期.......................... 2095.5 Binder對象死亡通知機(jī)制..................................... 2125.5.1 注冊死亡接收通知........................................2135.5.2 發(fā)送死亡接收通知........................................2165.5.3 注銷死亡接收通知........................................2215.6 ServiceManager的啟動過程..................................2245.6.1 打開和映射Binder設(shè)備文件.......................... 2265.6.2 注冊為Binder上下文管理者.......................... 2275.6.3 循環(huán)等待Client進(jìn)程請求............................... 2315.7 ServiceManager代理對象的獲取過程...........................................................2385.8 Service組件的啟動過程........................................2445.8.1 注冊Service組件............................................2455.8.2 啟動Binder線程池.........................................2895.9 Service代理對象的獲取過程................................ 2915.10 Binder進(jìn)程間通信機(jī)制的Java接口.............................................................3005.10.1 ServiceManager的Java代理對象的獲取過程..........................................3005.10.2 Java服務(wù)接口的定義和解析..................................................................3105.10.3 Java服務(wù)的啟動過程.................................... 3135.10.4 Java服務(wù)代理對象的獲取過程..............................................................3205.10.5 Java服務(wù)的調(diào)用過程.................................... 323第6章 Ashmem匿名共享內(nèi)存系統(tǒng)..............................................................3276.1 Ashmem驅(qū)動程序.................................................3286.1.1 基礎(chǔ)數(shù)據(jù)結(jié)構(gòu)..............................................3286.1.2 匿名共享內(nèi)存設(shè)備的初始化過程...........................................................3306.1.3 匿名共享內(nèi)存設(shè)備文件的打開過程.......................................................3326.1.4 匿名共享內(nèi)存設(shè)備文件的內(nèi)存映射過程................................................3346.1.5 匿名共享內(nèi)存塊的鎖定和解鎖過程.......................................................3366.1.6 匿名共享內(nèi)存塊的回收過程..................................................................3446.2 運(yùn)行時(shí)庫cutils的匿名共享內(nèi)存訪問接口....................................................3456.3 匿名共享內(nèi)存的C++訪問接口............................. 3496.3.1 MemoryHeapBase.........................................3496.3.2 MemoryBase.................................................3596.3.3 應(yīng)用實(shí)例.....................................................3646.4 匿名共享內(nèi)存的Java訪問接口............................. 3706.4.1 MemoryFile..................................................3706.4.2 應(yīng)用實(shí)例.....................................................3756.5 匿名共享內(nèi)存的共享原理.................................... 386第3篇 Android應(yīng)用程序框架第7章 Activity組件的啟動過程............................. 3927.1 Activity組件應(yīng)用實(shí)例............................................3927.2 根Activity組件的啟動過程.................................... 3987.3 子Activity組件在進(jìn)程內(nèi)的啟動過程............................................................4327.4 子Activity組件在新進(jìn)程中的啟動過程........................................................440第8章 Service組件的啟動過程............................ 4438.1 Service組件應(yīng)用實(shí)例.............................................4438.2 Service組件在新進(jìn)程中的啟動過程.............................................................4518.3 Service組件在進(jìn)程內(nèi)的綁定過程.................................................................463第9章 Android系統(tǒng)廣播機(jī)制................................. 4869.1 廣播機(jī)制應(yīng)用實(shí)例...............................................4879.2 廣播接收者的注冊過程........................................4939.3 廣播的發(fā)送過程...................................................501第10章 ContentProvider組件的實(shí)現(xiàn)原理.................................................52410.1 ContentProvider組件應(yīng)用實(shí)例........................... 52510.1.1 ArticlesProvider...........................................52510.1.2 Article.........................................................53510.2 ContentProvider組件的啟動過程................................................................55010.3 ContentProvider組件的數(shù)據(jù)共享原理........................................................57310.3.1 數(shù)據(jù)共享模型.............................................57310.3.2 數(shù)據(jù)傳輸過程.............................................57610.4 ContentProvider組件的數(shù)據(jù)更新通知機(jī)制................................................59610.4.1 注冊內(nèi)容觀察者..........................................59710.4.2 發(fā)送數(shù)據(jù)更新通知......................................603第11章 Zygote和System進(jìn)程的啟動過程.................................................61111.1 Zygote進(jìn)程的啟動腳本........................................61111.2 Zygote進(jìn)程的啟動過程........................................61411.3 System進(jìn)程的啟動過程.......................................622第12章 Android應(yīng)用程序進(jìn)程的啟動過程.................................................63012.1 應(yīng)用程序進(jìn)程的創(chuàng)建過程.................................. 63012.2 Binder線程池的啟動過程................................... 63912.3 消息循環(huán)的創(chuàng)建過程..........................................641第13章 Android應(yīng)用程序的消息處理機(jī)制.................................................64513.1 創(chuàng)建線程消息隊(duì)列.............................................64513.2 線程消息循環(huán)過程.............................................65013.3 線程消息發(fā)送過程.............................................65513.4 線程消息處理過程.............................................660第14章 Android應(yīng)用程序的鍵盤消息處理機(jī)制.......................................66714.1 鍵盤消息處理模型.............................................66714.2 InputManager的啟動過程.................................... 67014.2.1 創(chuàng)建InputManager......................................67014.2.2 啟動InputManager......................................67314.2.3 啟動InputDispatcher....................................67514.2.4 啟動InputReader........................................67714.3 InputChannel的注冊過程..................................... 68814.3.1 創(chuàng)建InputChannel.......................................68914.3.2 注冊Server端InputChannel...........................69714.3.3 注冊系統(tǒng)當(dāng)前激活的應(yīng)用程序窗口.....................................................70114.3.4 注冊Client端InputChannel...........................70614.4 鍵盤消息的分發(fā)過程..........................................70914.4.1 InputReader獲得鍵盤事件........................... 71014.4.2 InputDispatcher分發(fā)鍵盤事件...............................................................71714.4.3 系統(tǒng)當(dāng)前激活的應(yīng)用程序窗口獲得鍵盤消息.......................................72714.4.4 InputDispatcher獲得鍵盤事件處理完成通知.........................................743<

本目錄推薦

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