- 軟件大小:25.58M
- 軟件語言:中文
- 軟件類型(xíng):國產軟件
- 軟件類別:免費軟件 / 電子圖書
- 更(gèng)新時間:2017-11-10 13:43
- 運行環(huán)境:WinAll, WinXP, Win7, Win8, Win10
- 軟件等級:
- 軟件廠商:
- 官方網站:暫無
50.00M/中文/2.5
97.65M/中文/5.0
11.87M/中文/0.0
2.08M/中文/3.6
53.10M/中文/0.0
androids內核剖析(完整版)pdf是麵向安卓開發人員推出的免費電子書(shū)籍。使用這套電子書可以(yǐ)自學安卓內核剖析教程,熟悉完整的內核演示步驟。需要的用戶快來綠色資源網下載吧。
由柯元旦編著的《androids內核剖析》詳(xiáng)細分析了androids內核(hé)的內部機(jī)製,包括窗(chuāng)口(kǒu)管理係統、Activity管理係統、輸入法框架、編譯係統等,為androids內核(hé)定製及高級應(yīng)用程序開發提供技術參考。《androids內核(hé)剖析》適合於所有androids相關的工程師及產品經理,還(hái)可作為相關培訓機(jī)構的教材。
第1部分 基礎篇(piān)
第(dì)1章 linux基礎2
1.1 linux文件係統概述2
1.2 linux啟動過程4
1.3 常用linux 命令6
1.4 shell腳本備忘9
1.4.1 獲取輸入10
1.4.2 變量(liàng)定義10
1.4.3 條(tiáo)件判斷11
1.4.4 while []…do… done語句12
1.4.5 for循環13
1.4.6 函數14
1.4.7 常用內置符號常量(liàng)15
1.5 make腳本備忘15
1.5.1 一個簡單的makefile文件16
1.5.2 變量的定義與賦值18
1.5.3 條件控(kòng)製語句(jù)18
1.5.4 宏(函數)定(dìng)義19
1.5.5 內置符號和變量22
1.5.6 模板目標(pattern target)23
1.5.7 目標特定(dìng)的變量賦值(target-specific variable)24
1.5.8 常用選項25
第2章 java基礎26
2.1 類裝載器dexclassloader26
2.1.1 dexclassloader的調用(yòng)方法27
2.1.2 基於類裝載器(qì)設計一種(zhǒng)“插件”架構29
2.2 jni調用機製32
2.2.1 java訪問c33
2.2.2 c訪問java35
2.2.3 在c中使用持久對象37
2.3 異(yì)步(bù)消(xiāo)息處理線程(chéng)37
2.3.1 實現異步線程的一般思路38
2.3.2 androids中異步線(xiàn)程的實現方法(fǎ)38
第3章(zhāng) androids源碼(mǎ)下載及開發環境(jìng)配置44
3.1 mac係統的(de)配置44
3.1.1 硬盤格式的(de)配置44
3.1.2 port的用(yòng)法46
3.2 在linux中配置usb連接46
3.3 在eclipse中調試framework46
3.3.1 一段防止下載異常(cháng)的腳本47
3.3.2 調試framework中(zhōng)的(de)代碼47
第4章(zhāng) 使用git51
4.1 安裝git52
4.2 git倉(cāng)庫管理52
4.2.1 倉庫的組成52
4.2.2 創建倉庫54
4.2.3 分支管理55
4.3 git merge用法57
4.4 git rebase用法58
4.5 git cherry-pick用法61
4.6 git reset用法62
4.7 恢複到(dào)無引用提交63
4.8 git remote用法65
4.9 git 配(pèi)置(zhì)67
4.9.1 基本(běn)信息配置68
4.9.2 merge、diff工具配置68
4.9.3 .gitignore配置70
4.10 同時使(shǐ)用git和svn71
4.11 其他git常用命令示例72
4.11.1 git branch72
4.11.2 git checkout72
4.11.3 git log73
4.11.4 git commit --amend73
4.11.5 git cherry-pick sha-173
4.11.6 git merge-base74
4.11.7 git diff master…dev74
4.11.8 git revert75
4.11.9 git diff75
4.11.10 git rm75
4.11.11 git tag76
第2部(bù)分 內核篇
第5章 binder78
5.1 binder框架78
5.2 設計(jì)servier端80
5.3 binder客戶端設計81
5.4 使用service類82
5.4.1 獲取binder對象82
5.4.2 保證包裹內參數順序aidl工具的使用83
5.5 係統服務中的binder對象88
5.5.1 servicemanager管理的服務88
5.5.2 理解manager90
第(dì)6章 framework概述92
6.1 framework框架92
6.1.1 服務(wù)端92
6.1.2 客戶端93
6.1.3 linux驅動94
6.2 apk程序的(de)運(yùn)行過程(chéng)94
6.3 客戶端中的線程94
6.4 幾個常見問(wèn)題95
6.4.1 acitivity之(zhī)間(jiān)如何傳遞消息(數據)95
6.4.2 窗口相關的概念(niàn)96
第7章 理(lǐ)解(jiě)context98
7.1 context是什麽98
7.2 一個應用程序中包含(hán)多少個context對象99
7.3 context相關類的繼承關係99
7.4 創建context100
7.4.1 application對應的context101
7.4.2 activity對應的context102
7.4.3 service對應的context103
7.4.4 context之間的關係104
第(dì)8章 創建窗口的過程106
8.1 窗口的類型106
8.2 token變量的含義108
8.2.1 activity中的mtoken108
8.2.2 window中的(de)mapptoken109
8.2.3 windowmanager.layoutparams中的token109
8.2.4 view中的token110
8.3 創建應用窗口111
8.4 創建子窗口121
8.4.1 dialog的創建122
8.4.2 popupwindow的創建126
8.4.3 contextmenu的創建127
8.4.4 optionmenu的創建132
8.5 係統窗口toast的創建136
8.5.1 toast調用流程137
8.5.2 toast添加窗口139
8.6 創建窗口示例(lì)139
第9章 framework的啟動過程142
9.1 framework運行環境綜述142
9.2 dalvik虛(xū)擬機相關的可執行程序143
9.2.1 dalvikvm144
9.2.2 dvz144
9.2.3 app_process145
9.3 zygote的啟動147
9.3.1 在init.rc中配置zygote啟動參數147
9.3.2 啟動socket服務端口148
9.3.3 加載preload-classes151
9.3.4 加載preload-resources152
9.3.5 使用(yòng)folk啟動新的進(jìn)程152
9.4 systemserver進程的啟(qǐ)動(dòng)155
9.4.1 啟動各種係統服(fú)務(wù)線(xiàn)程(chéng)156
9.4.2 啟動第一個activity158
第(dì)10章 ams內部原理160
10.1 activity調度機製160
10.1.1 幾個重要概念161
10.1.2 ams中(zhōng)的一些重要調(diào)度相關變量163
10.1.3 startactivity()的流程165
10.1.4 stopactivitylocked()停止activity183
10.1.5 按“home”鍵回到桌麵的過程186
10.1.6 按(àn)“back”鍵回到上一個activity187
10.1.7 長按(àn)“home”鍵189
10.1.8 activity生命(mìng)期的代碼含義190
10.2 內存管理192
10.2.1 關閉而不(bú)退出192
10.2.2 androids與linux的配合194
10.2.3 各種(zhǒng)關閉程序的過程196
10.2.4 釋放內存詳解197
10.3 對ams中數據對象(xiàng)的理解211
10.3.1 常見(jiàn)的對(duì)象操作212
10.3.2 理解activity213
10.3.3 androids多進程嗎,是同時在運行多個(gè)應用程序嗎213
10.4 activitygroup的內部機(jī)製(zhì)214
10.4.1 tabactivity使用時的類關係結構215
10.4.2 localactivitymanager的內部機製217
10.4.3 activitygroup內部的activity生命期控製220
第11章 從輸(shū)入設備中獲取消息221
11.1 androids消息獲取過程(chéng)概(gài)述221
11.2 與消息處理(lǐ)相關的源碼文件分布223
11.3 創建inputdispatcher線程226
11.4 把窗口信息傳(chuán)遞給inputdispatcher線(xiàn)程227
11.5 創(chuàng)建inputchannel229
11.6 在wms中注冊inputchannel232
11.7 在客戶進程中注冊inputchannel233
11.8 wms中處(chù)理消息的時機234
11.9 客戶窗口(kǒu)獲取(qǔ)消息的時機235
第12章(zhāng) 屏幕繪圖基礎237
12.1 繪製屏幕的(de)軟件架構237
12.2 java客戶端繪(huì)製(zhì)調用過程239
12.3 c客戶端繪製過程241
12.4 java客戶端繪製相關類的關係244
第13章 view工作原理247
13.1 導論247
13.2 用(yòng)戶消息類型249
13.2.1 按鍵(jiàn)消息249
13.2.2 觸摸消息250
13.3 按鍵消息派發過程252
13.3.1 keyevent.dispatcherstate中的長按監測252
13.3.2 按鍵消息總體派發過程254
13.3.3 根視圖(tú)內部派發過程(chéng)256
13.3.4 activity內(nèi)部派發過程257
13.3.5 view類內部的onkeydown()和onkeyup()260
13.3.6 activity中的onkeydown()和onkeyup()261
13.3.7 phoneswindow內部(bù)消息派發過程262
13.4 按鍵消(xiāo)息在wms中的派發過程263
13.5 觸摸消息(xī)派發過程266
13.5.1 觸摸(mō)消息總體派發過程266
13.5.2 根視圖內部消息派發過程267
13.5.3 viewgroup內部消息派發過程268
13.5.4 各種消息監測的(de)基本實現方法271
13.5.5 view內默認消息派發過程272
13.6 導致view樹重新遍曆的時機274
13.6.1 狀態的分類274
13.6.2 導致view樹重新遍曆(lì)的總體誘因圖275
......
請描述您所遇到的錯誤,我們將盡快予(yǔ)以修正,謝謝!
*必填項,請輸入內容