深入剖析Android開發:小應用里的大智慧( 簡體 字) | |
作者:張泳 | 類別:1. -> 程式設計 -> 手機程式 -> Android |
出版社:人民郵電出版社 | 3dWoo書號: 39315 詢問書籍請說出此書號! 有庫存 NT售價: 345 元 |
出版日:8/1/2014 | |
頁數:387 | |
光碟數:0 | |
站長推薦: | |
印刷:黑白印刷 | 語系: ( 簡體 字 ) |
ISBN:9787115358561 | 加入購物車 │加到我的最愛 (請先登入會員) |
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證, 繁體書的下載亦請直接連絡出版社) | |
第一篇 Android開發起航
第1章 環境搭建 2 1.1 搭建Android開發環境的需求 2 1.2 Android開發環境配置 3 1.2.1 JDK的下載、安裝及配置 3 1.2.2 下載并安裝Eclipse 6 1.2.3 Android SDK的安裝和配置 6 1.2.4 ADT的安裝和配置 9 1.2.5 創建并運行模擬器 12 第2章 測試方法及工具 16 2.1 向世界問好——HelloWorld項目 16 2.1.1 兩種創建HelloWorld項目的方法 16 2.1.2 HelloWorld項目中的默認配置解讀 23 2.2 HelloWorld項目運行及調試信息 26 2.2.1 運行HelloWorld應用程序 26 2.2.2 HelloWorld運行過程的調試信息 29 2.3 DDMS工具介紹 30 2.3.1 DDMS工具及其打開方式 30 2.3.2 使用DDMS工具調測HelloWorld項目 31 2.3.3 詳解DDMS工具界面 36 2.3.4 DDMS工具菜單中的重要工具 41 2.4 Android的主要工具介紹 62 2.4.1 ADB工具 63 2.4.2 android工具 64 2.4.3 sdcard相關命令 65 2.4.4 模擬器的操作 65 2.4.5 LogCat工具 67 2.4.6 數據庫工具 68 2.5 Android其他小工具簡介 68 2.5.1 截屏工具 69 2.5.2 Monkey工具 69 2.6 下載谷歌播放器源代碼 72 第二篇 Android組件及其配置 第3章 應用的五臟六腑——AndroidManifest.xml 78 3.1 Android Manifest.xml文件 78 3.2 一切從manifest節點開始 82 3.2.1 xmlns:android屬性——定義命名空間 82 3.2.2 package屬性——應用程序的身份證 84 3.2.3 android:sharedUserId屬性——共享數據 85 3.2.4 android:versionCode屬性——內部版本號 86 3.2.5 android:versionName屬性——顯示給用戶的版本號 86 3.2.6 android:installLocation屬性——安裝位置 87 3.2.7 HelloWorld示例——再向世界打個招呼 89 3.2.8 動動手,驗證知識 90 3.3 應用程序權限的聲明 93 3.3.1 uses-permission——應用程序的權限申請 93 3.3.2 permission節點——自定義應用程序的訪問權限 100 3.3.3 uses-sdk節點——SDK版本限定 103 3.3.4 instrumentation節點——應用的監控器 105 3.3.5 動動手,驗證知識 107 3.3.6 instrumentation節點的另一種使用方法 114 3.4 應用程序的根節點——application 117 3.4.1 application節點配置 117 3.4.2 音樂播放器的application節點 118 3.4.3 如何實現Application類 119 3.4.4 Application提供的函數及其用法 123 3.5 backupAgent的用法 134 3.5.1 backupAgent簡介 134 3.5.2 如何使用backupAgent來實現備份 134 3.5.3 從備份中實現恢復 141 3.5.4 如何使用bmgr工具 144 3.6 application的屬性詳解 150 3.6.1 android:allowBackup 151 3.6.2 allowTaskReparenting 152 3.6.3 android:killAfterRestore 152 3.6.4 android:restoreAnyVersion 153 3.6.5 android:debuggable 156 3.6.6 android:description 158 3.6.7 android:enabled 159 3.6.8 android:hasCode 160 3.6.9 android:hardwareAccele-rated 161 3.6.10 android: label/android:icon 162 3.6.11 android:logo 164 3.6.12 android:manageSpace-Activity 165 3.6.13 android:permission 165 3.6.14 android:persistent 165 3.6.15 android:process 166 3.6.16 android:taskAffinity 167 3.6.17 android:theme 168 3.6.18 android:uiOptions 171 3.6.19 android:vmSafeMode 174 3.6.20 android:largeHeap 174 第4章 讓程序活動起來——Activity 176 4.1 什么是Activity 176 4.1.1 簡介 176 4.1.2 解讀音樂播放器中的Activity 177 4.2 定義Activity 179 4.2.1 定義Activity的回調方法 179 4.2.2 在AndroidManifest.xml中聲明Activity 181 4.3 管理Activity的生命周期 182 4.3.1 Activity的3種狀態 182 4.3.2 實現Activity的生命周期回調 182 4.3.3 回調方法在音樂播放器中的應用 186 4.4 保存和協調Activity 189 4.4.1 保存Activity狀態 189 4.4.2 協調Activity 191 4.5 解讀關于生命周期的一個實例 192 4.6 activity節點的屬性 195 4.6.1 android:allowTaskRepa-renting 195 4.6.2 android:alwaysRetain-TaskState 195 4.6.3 android:clearTaskOn-Launch 196 4.6.4 android:configChanges 196 4.6.5 android:enabled 197 4.6.6 android:excludeFrom-Recents 197 4.6.7 android:exported 197 4.6.8 android:finishOnTask-Launch 197 4.6.9 android:hardwareAccele-rated 198 4.6.10 android:icon 198 4.6.11 android:label 198 4.6.12 android:launchMode 198 4.6.13 android:multiprocess 199 4.6.14 android:name 199 4.6.15 android:noHistory 199 4.6.16 android:permission 200 4.6.17 android:process 200 4.6.18 android:screenOrienta-tion 200 4.6.19 android:stateNotNeeded 200 4.6.20 android:taskAffinity 201 4.6.21 android:theme 201 4.6.22 android:windowSoft-InputMode 201 第5章 我會默默地為你服務——service 202 5.1 服務 202 5.1.1 何為服務 202 5.1.2 服務可采用的方法 202 5.1.3 service節點的屬性 203 5.2 創建并使用服務 204 5.2.1 創建Service子類的重要回調方法 204 5.2.2 在manifest文件中聲明服務 205 5.3 創建一個啟動的服務 206 5.3.1 繼承IntentService類 206 5.3.2 繼承Service類 207 5.3.3 啟動服務 208 5.3.4 停止服務 208 5.3.5 TuringService實例 209 5.4 創建一個被綁定的服務 212 5.4.1 基本介紹 212 5.4.2 TuringBoundService實例 213 第6章 我可以更漂亮——布局 217 6.1 最簡單的布局類——FrameLayout 217 6.1.1 FrameLayout簡介 217 6.1.2 FrameLayout特有的屬性 218 6.1.3 FrameLayout內子視圖的特色布局參數 220 6.2 線性布局——LinearLayout 222 6.2.1 LinearLayout簡介 222 6.2.2 LinearLayout的特有屬性 225 6.2.3 LinearLayout特有的布局參數 231 6.3 相對布局——RelativeLayout 231 6.3.1 RelativeLayout簡介 231 6.3.2 RelativeLayout的特色屬性及其參數 233 第三篇 核心服務解析篇 第7章 Android系統的啟動 244 7.1 初始化流程 244 7.1.1 應用的初始化流程 244 7.1.2 init.rc的用法 246 7.1.3 用init解析整個init.rc文件 251 7.2 創建system_service進程 254 7.2.1 創建流程 254 7.2.2 system_service簡介 256 第8章 備份管理服務 258 8.1 備份管理服務的啟動方式和流程 258 8.1.1 備份管理服務的啟動 258 8.1.2 詳解備份管理服務的流程 258 8.2 使用備份管理服務 263 8.2.1 bmgr工具簡介 263 8.2.2 使用bmgr工具實現備份與恢復 264 8.2.3 用編程的方式實現備份與恢復 272 8.3 應用程序在被重新安裝過程中的備份和還原 274 第9章 Activity管理服務 276 9.1 ActivityManagerService簡介 276 9.2 ActivityManagerService的使用 276 9.2.1 孵化進程 276 9.2.2 ActivityManagerService啟動的3個階段 277 9.2.3 ActivityManagerService的工作原理 289 9.2.4 ActivityManagerService依賴的兩個類 294 9.3 Activity的啟動流程 295 9.3.1 啟動Activity的方式 295 9.3.2 Activity啟動的4個階段 297 9.4 結束Activity 306 9.4.1 結束Activity的3種主要方法 306 9.4.2 結束Activity的4個階段 308 9.5 廣播接收器 315 9.5.1 注冊廣播接收器 315 9.5.2 ActivityManagerService的行為 316 9.6 服務 318 9.6.1 服務的數據結構 318 9.6.2 啟動服務 320 9.6.3 停止服務 327 9.6.4 以綁定的方式啟動/停止服務 331 9.7 發布ContentProvider 339 9.7.1 啟動ContentProvider發布工作時的操作 339 9.7.2 解讀發布流程中Activity-ManagerService的行為 342 9.8 ActivityManagerService如何應付異常 345 第10章 包管理服務 349 10.1 PackageManagerService概述 349 10.2 PackageManagerService的組成和應用 349 10.2.1 PackageManagerService的重要組成部分 350 10.2.2 解讀PackageManager-Service如何關注目錄 351 10.2.3 PackageManagerService定義的PackageParser類 354 10.3 啟動PackageManagerService 355 10.3.1 PackageManagerService的啟動流程 355 10.3.2 PackageManagerService構造函數的流程 356 10.3.3 scanDirLI()方法 361 10.4 解析AndroidManifest.xml文件 366 10.4.1 解析流程 366 10.4.2 解析音樂播放器的AndroidManifest.xml文件 368 10.5 安裝應用程序 377 10.5.1 用ADB的install命令安裝應用程序 377 10.5.2 解析installPackageWith-Verification()的行為 379 10.6 卸載應用程序 383 《深入剖析Android開發:小應用里的大智慧》以谷歌的音樂播放器為例,深入剖析了Android的重要組件和核心服務,書中首先介紹了Android開發環境的搭建,以及Android SDK中一些重要工具的用法,接著介紹了Android的組件及其配置,最后從源代碼的角度剖析了Android的核心管理服務。
《深入剖析Android開發:小應用里的大智慧》不僅適合從事或者正準備從事Android開發的工程師學習,也可以作為培訓教材使用。 |