深入Android套用開發

深入Android套用開發

《深入Android套用開發》是2012-7-10機械工業出版社華章公司出版的圖書,作者是苗忠良 / 曾旭 / 宛斌。

基本介紹

  • 作者:苗忠良                       /            曾旭                       /            宛斌
  • ISBN:9787111379577
  • 頁數:452
  • 定價:79.00元
  • 出版社:機械工業出版社華章公司
  • 出版時間:2012-7-10
  • 裝幀:平裝
  • 副標題:核心技術解析與最佳實踐
內容介紹,作者介紹,作品目錄,

內容介紹

如何才能真正進階為Android套用開發高手?必須深入理解Android核心技術的底層原理和在開發中總結並使用各種最佳實踐,別無他法!本書以Android的原始碼為主,SDK為輔,針對套用開發者的需求,對各種核心技術的使用方法、底層原理和實現細節進行了深入而詳細的講解,同時輔之以大量案例和最佳實踐,為開發者的進階修煉和開發高質量的套用提供了絕佳指導。
第1章深入介紹了Android的4大核心組件和9大主要套用框架;第2章透徹講解了資源、組件、事件處理、套用風格和數據適配等核心知識;第3章系統地展示了各種常用的UI控制項的使用方法及原理,並對XML和Java這兩種控制項屬性配置方式和適用場景進行了分析和比較;第4章深入闡述了Android的數據存儲與管理;第5章分析了Android在UI層、框架層和核心層的通信機制和原理;第6章深入講解了Android實現多執行緒的兩種主要方式(原生Java執行緒和Android對Java執行緒的封裝)的原理,並對它們進行了全方位比較;第7章深入介紹了Android網路編程的核心技術;第8章詳細講解了Android中的2D圖像、3D圖像、2D圖形以及動畫方面的知識;第9章全面介紹了Android的多媒體編程,包括音頻、視頻和Camera服務等,並對TTS的實現進行了剖析;第10章詳細講解了Android的跨語言調用;第11章深入剖析了Android的安全框架和安全機制;第12章針對商業套用的需要講解了Android的調試、測試與性能最佳化;第13章全面地剖析了Android的編譯系統,包括編譯工具、映像檔案編譯、SDK編譯、NDK編譯和目標系統的配置等;第14章分析了Android系統的啟動過程;第15章講解了Android的系統管理原理,包含記憶體管理、套用管理、電源管理、系統管理,以及系統的還原、升級、配置和備份等多方面的內容,能幫助開發者從一個更高的視角去理解Android的運行機制。

作者介紹

苗忠良,資深Android開發工程師和嵌入式軟體開發工程師,對Android、Linux和Qtopia等平台和技術有非常深入的研究,實踐經驗極其豐富。尤其是在Android領域,不僅擅長Android套用的開發,對Android系統的底層原理有非常深入的研究,而且還對Android套用的設計開發思想和用戶體驗有非常深入的認識。現擔任某公司上海研發中心的技術總監,擁有發明專利3項,發表學術論文多篇,曾多次在高校和企業舉辦技術講座,深受歡迎。

作品目錄

前言
第1章 深入解析Android核心組件和套用框架 / 1
1.1 核心組件詳解 / 1
1.1.1 Activity組件 / 1
1.1.2 Service組件 / 19
1.1.3 Intent組件 / 25
1.1.4 BroadcastReceiver組件 / 31
1.2 套用框架解析 / 31
1.2.1 Service框架 / 32
1.2.2 Activity管理機制 / 38
1.2.3 Broadcast機制 / 41
1.2.4 對話框框架 / 42
1.2.5 標題欄框架 / 46
1.2.6 狀態欄框架 / 48
1.2.7 通知機制 / 52
1.2.8 搜尋框架 / 56
1.2.9 ActionBar框架 / 59
第2章 Android 資源框架詳解/ 64
2.1 布局檔案 / 64
2.2 值檔案 / 67
2.3 創建選單 / 75
2.3.1 選項選單 / 75
2.3.2 上下文選單 / 77
2.3.3 子選單 / 79
2.3.4 彈出選單 / 80
2.4 斷言的處理 / 81
2.5 Jar包和共享庫 / 83
2.6 系統資源 / 84
第3章 Android UI控制項精要 / 89
3.1 布局控制項 / 89
3.1.1  LinearLayout / 89
3.1.2 RelativeLayout / 92
3.1.3 TableLayout / 93
3.1.4 FrameLayout / 94
3.2 顯示控制項 / 97
3.2.1 TextView / 97
3.2.2 ProgressBar / 99
3.2.3 WebView / 100
3.2.4 ViewSwitcher / 101
3.2.5 TextSwitcher / 102
3.2.6 ViewFlipper / 103
3.2.7 SeekBar / 104
3.2.8 ViewStub / 106
3.3 容器控制項 / 106
3.3.1 SlidingDrawer / 106
3.3.2 ListView / 107
3.3.3 ExpandableListView / 111
3.3.4 GridView / 112
3.3.5 ScrollView / 113
3.3.6 TabHost / 114
3.4 輸入控制項 / 114
3.4.1 EditText / 114
3.4.2 Spinner / 116
3.4.3 AutoCompleteTextView / 117
3.5 控制控制項 / 118
3.5.1 Button / 118
3.5.2 CheckBox / 119
3.5.3 RadioButton / 119
3.5.4 RatingBar / 120
3.5.5 ZoomControls / 121
3.6 多媒體控制項 / 122
3.6.1 ImageView / 122
3.6.2 ImageSwitcher / 122
3.7 特殊控制項 / 125
3.8 桌面部件 / 126
3.8.1 App Widgets的實現 / 126
3.8.2 Live folders的實現 / 128
3.9 自定義控制項 / 129
3.10 數據適配 / 130
3.10.1 視圖適配 / 130
3.10.2 標準化解析 / 133
3.11 Fragment / 135
3.11.1 Fragment 生命周期 / 135
3.11.2 ListFragment / 137
3.11.3 DialogFragment / 137
3.11.4 PreferenceFragment / 138
3.11.5 WebViewFragment / 138
第4章 深入解析Android數據存儲與管理 / 139
4.1 XML檔案管理 / 139
4.2 內部檔案管理 / 140
4.2.1 寫入數據 / 141
4.2.2 讀取數據 / 141
4.3 外部檔案管理 / 142
4.4 資料庫管理 / 143
4.4.1 Android封裝接口 / 144
4.4.2 原生方法處理 / 145
4.5 數據處理 / 145
4.5.1 Set類 / 146
4.5.2 Map類 / 148
4.5.3 list類 / 150
4.5.4 流類 / 150
4.5.5 正則表達式 / 153
4.5.6 I/O管理 / 153
4.5.7 JSON實現 / 155
第5章 深入解析Android通信機制 / 159
5.1 Intent通信 / 159
5.1.1 Intent的常見用法 / 159
5.1.2 Serializable接口 / 165
5.1.3 Parcelable接口 / 165
5.2 UI事件處理 / 166
5.2.1 事件監聽器、事件句柄及焦點處理 / 167
5.2.2 觸控事件處理 / 168
5.2.3 按鍵事件處理 / 170
5.2.4 軌跡球事件處理 / 171
5.3 任務調度 / 172
第6章 深入解析Android多執行緒編程 / 174
6.1 Java執行緒實現 / 174
6.2 Android執行緒封裝 / 177
6.3 執行緒間的訊息通信 / 180
6.3.1 訊息佇列 / 181
6.3.2 訊息分發 / 183
6.3.3 訊息接收 / 183
6.4 執行緒安全處理 / 184
6.4.1 synchronized同步 / 184
6.4.2 RPC通信 / 186
6.4.3 SQLite調用 / 186
第7章 深入解析Android網路編程 / 187
7.1 無線接入技術概述 / 187
7.2 基礎協定封裝 / 190
7.3 Java網路編程接口 / 194
7.4 Apache網路編程接口 / 195
7.5 Android網路編程接口 / 196
7.6 Web服務實現 / 199
7.6.1 Web服務概述 / 199
7.6.2 KSOAP2的實現 / 199
7.7 XML解析器 / 200
7.7.1 Pull解析器 / 201
7.7.2 DOM解析器 / 202
7.7.3 SAX解析器 / 203
7.8 套接字編程 / 203
7.9 Web套用實現 / 205
7.10 SIP服務 / 212
7.11 NFC通信 / 214
7.12 RIL層處理 / 216
7.13 報文分析 / 220
第8章 Android圖形、圖像與動畫精要 / 222
8.1 2D圖像處理 / 222
8.1.1 基本接口 / 222
8.1.2 縮略圖 / 228
8.1.3 圖像瀏覽 / 228
8.1.4 人臉檢測 / 230
8.2 3D圖像處理 / 233
8.2.1 OpenGL ES的實現 / 233
8.2.2 RenderScript的實現 / 236
8.3 圖形處理 / 239
8.3.1 基本接口 / 239
8.3.2 Surface渲染系統 / 244
8.4 動畫處理 / 247
8.4.1 補間動畫 / 248
8.4.2 幀動畫 / 249
8.4.3 屬性動畫 / 250
第9章 深入解析Android多媒體編程 / 257
9.1 音頻處理 / 257
9.1.1 音頻播放 / 258
9.1.2 音頻錄製 / 264
9.1.3 音頻管理 / 265
9.1.4 音效處理 / 267
9.2 視頻處理 / 269
9.2.1 視頻播放 / 270
9.2.2 視頻錄製 / 273
9.3 Camera服務 / 274
9.4 TTS的實現 / 276
第10章 Android跨語言調用詳解 / 279
10.1 C語言與彙編語言的相互調用 / 279
10.2 C++與C語言的相互調用 / 280
10.3 Java對C/C++的調用 / 282
10.4 C/C++對Java的調用 / 287
第11章 Android安全框架解析 / 292
11.1 Java混淆器 / 293
11.2 接入許可權 / 294
11.2.1 創建接入許可權 / 294
11.2.2 套用許可權 / 294
11.2.3 許可權驗證 / 296
11.2.4 接入服務 / 297
11.2.5 框架層接入限制 / 298
11.3 數字證書 / 298
第12章 Android的調試、測試與性能最佳化 / 300
12.1 Android調試 / 300
12.1.1 Logcat日誌調試 / 300
12.1.2 dmtracedump跟蹤 / 300
12.1.3 Dev Tools調試 / 301
12.1.4 螢幕截圖分析 / 301
12.1.5 記憶體調試 / 302
12.2 Android布局最佳化 / 305
12.2.1 Layoutopt最佳化 / 305
12.2.2 Hierarchyviewer最佳化 / 306
12.3 Android測試 / 307
12.3.1 Monkey壓力測試 / 307
12.3.2 JUnit回歸測試 / 308
12.3.3 CTS兼容性測試 / 312
12.3.4 目標環境測試 / 313
12.4 Android性能最佳化 / 314
12.4.1 最佳化資源讀取 / 314
12.4.2 最佳化APK載入 / 315
12.4.3 Dalvik虛擬機 / 315
12.4.4 TraceView性能分析 / 315
12.4.5 運行效率的最佳化 / 317
第13章 深入解析Android編譯系統 / 318
13.1 原始碼編譯 / 318
13.1.1 映像檔案 / 318
13.1.2 編譯方法 / 319
13.1.3 主要腳本 / 322
13.1.4 環境變數 / 332
13.1.5 目標環境 / 333
13.2 SDK編譯 / 333
13.2.1 Linux下的SDK編譯 / 334
13.2.2 Windows下的SDK編譯 / 334
13.2.3 ADT外掛程式的編譯 / 334
13.3 NDK編譯 / 335
13.3.1 編譯腳本 / 336
13.3.2 配置腳本 / 337
13.3.3 GDB調試 / 340
13.3.4 NativeActivity實現 / 340
13.4 應用程式編譯 / 342
13.4.1 本地環境變數 / 342
13.4.2 在Eclipse下編譯 / 343
13.5 目標系統配置 / 343
13.5.1 自定義模擬器配置 / 343
13.5.2 目標板配置 / 348
13.5.3 目標環境配置 / 350
13.6 檔案系統配置 / 350
13.7 編譯工具 / 350
13.8 fastboot模式 / 352
第14章 Android啟動過程詳解 / 353
14.1 系統的啟動過程 / 353
14.1.1 系統屬性配置 / 354
14.1.2 檔案系統掛載 / 355
14.1.3 守護進程啟動 / 356
14.2 套用的啟動過程 / 362
14.2.1 套用的啟動配置 / 362
14.2.2 套用的啟動過程 / 364
第15章 深入解析Android系統管理 / 369
15.1 記憶體管理 / 369
15.1.1 對象引用 / 369
15.1.2 垃圾回收策略 / 370
15.2 套用管理 / 373
15.2.1 套用的配置 / 373
15.2.2 套用的啟動 / 374
15.2.3 套用的銷毀 / 375
15.3 電源管理 / 376
15.3.1 電源管理框架 / 376
15.3.2 套用層策略 / 379
15.4 下載管理 / 380
15.4.1 Gingerbread前的下載 / 380
15.4.2 Gingerbread後的下載 / 382
15.5 系統配置 / 383
15.5.1 系統資料庫 / 383
15.5.2 系統屬性 / 385
15.6 數據管理 / 386
15.6.1 數據備份 / 386
15.6.2 剪下板管理 / 387
15.7 設備管理 / 388
15.7.1 管理工具 / 388
15.7.2 感測器管理 / 395
15.7.3 USB管理 / 398
15.8 套用發布 / 399
15.8.1 套用商店概述 / 399
15.8.2 目標環境的適配 / 401
15.8.3 發布套用 / 410
附錄A Android開發環境搭建 / 413
附錄B 常用Linux命令 / 436
附錄C 編碼規範 / 441
附錄D 學習資源 / 447
參考文獻 / 451

相關詞條

熱門詞條

聯絡我們