《Learning Android中文版(第2版)》是2014年9月電子工業出版社出版的圖書,作者是馬爾科·加爾根塔 (Marko Gargenta)、中村真澄 (Masumi Nakamura) 。
基本介紹
- 書名:Learning Android
- 作者:馬爾科·加爾根塔 (Marko Gargenta)、中村真澄 (Masumi Nakamura)
- 譯者:盧濤、李穎
- 出版社:電子工業出版社
- 出版時間:2014年9月
- 頁數:269 頁
- 定價:59 元
- 開本:16 開
- 裝幀:平裝
- ISBN: 9787121239809
內容簡介,編輯推薦,目錄,作者簡介,媒體評論,
內容簡介
《Learning Android中文版(第2版)》是一本介紹Android 開發的入門圖書,它循序漸進地介紹了如何利用Android 基本構件來創建用戶界面、存儲數據和執行連線網路等操作。《Learning Android中文版(第2版)》以親手實現一個類Twitter 的應用程式為主線,通過不斷為其添加功能展開講解。而這一學習過程積累出的代碼模式庫,可以運用於實際Android 應用程式開發。《Learning Android中文版(第2版)》內容包括:Android 平台概覽及其在移動生態系統中的地位、Android 設計架構、Android 開發環境配置、Android 構件、基本Android 的用戶界面構建、界面元素組織方法、構建執行後台任務與更新數據的服務等。
《Learning Android中文版(第2版)》適合想快速掌握Android 開發知識或想從其他開發平台轉向Android 的讀者閱讀。
編輯推薦
想為Android設備開發應用程式嗎?本書是助你入門的良方。作者是培訓了大機構和創業公司數百位開發人員的移動開發專家。這本優雅的導論給有面向對象開發經驗的程式設計師展示了如何利用Android的基本構件來創建用戶界面、存儲數據和執行連線網路等操作。
本書將一步步地引導你構建一個類似Twitter的應用程式,每章都添加一些新功能。你也將建立自己的代碼模式工具包,藉助它可以輕鬆地編寫任何Android應用程式。
■了解Android平台及其在移動生態系統中的地位。
■深入了解Android套件,包括其應用程式框架及APK應用程式包。
■學習活動、意圖、服務、內容提供器和廣播接收器等Android構件。
■創建基本的Android用戶界面,並利用視圖和布局來組織界面元素。
■在應用程式中構建一個執行後台進程來更新數據的服務。
目錄
前言 ............................................................................. xv
第1 章 Android 概述 ..................................................... 1
1.1 Android 基本特點 ............................................................................................1
全面 .................................................................................................................1
開源平台 .........................................................................................................2
專為移動設備設計 ..........................................................................................2
1.2 歷史 .................................................................................................................3
谷歌的動機 .....................................................................................................3
Android 的兼容性 ............................................................................................4
開放手機聯盟 ..................................................................................................4
1.3 Android 的版本 ...............................................................................................5
1.4 Android 的風格 ...............................................................................................7
Android 開源項目 ............................................................................................7
製造商的載入項 ..............................................................................................7
1.5 總結 .................................................................................................................8
第2 章 Java 綜述 .......................................................... 9
2.1 注釋 ...............................................................................................................12
2.2 數據類型:基本數據類型和對象 ..................................................................13
2.3 修飾符 ...........................................................................................................14
2.4 數組 ...............................................................................................................15
2.5 運算符 ...........................................................................................................16
2.6 控制流語句 ...................................................................................................16
2.7 錯誤/ 異常處理 .............................................................................................19
2.8 複雜的示例 ...................................................................................................22
2.9 接口和繼承 ...................................................................................................26
2.10 集合 .............................................................................................................27
2.11 泛型 .............................................................................................................28
2.12 執行緒 .............................................................................................................28
2.13 總結 .............................................................................................................29
第3 章 Android 套件 .................................................... 31
3.1 套件概述 .......................................................................................................31
3.2 Linux .............................................................................................................31
Android 不等於Linux ...................................................................................33
3.3 本地層 ...........................................................................................................33
HAL...............................................................................................................34
本地庫 ...........................................................................................................34
本地守護進程 ................................................................................................35
本地工具 .......................................................................................................36
3.4 Dalvik ............................................................................................................36
Android 和Java .............................................................................................37
3.5 應用程式框架 ................................................................................................39
3.6 應用程式 .......................................................................................................40
Android 應用程式包(APK) .........................................................................40
應用程式簽名 ................................................................................................41
應用程式分發 ................................................................................................41
3.7 總結 ...............................................................................................................42
第4 章 安裝和開始使用Android 工具 ........................... 43
4.1 安裝Java 開發工具包 ...................................................................................43
4.2 安裝Android SDK ........................................................................................45
為工具設定PATH 環境變數 ..........................................................................45
安裝Eclipse ..................................................................................................46
Eclipse 工作區 ...............................................................................................46
設定Android 開發工具 .................................................................................46
4.3 Hello World! ..................................................................................................48
創建新項目 ...................................................................................................48
4.4 剖析一個Android 項目 .................................................................................51
Android 的清單檔案 ......................................................................................51
字元串資源 ...................................................................................................54
布局XML 代碼 .............................................................................................55
4.5 可繪製資源 ...................................................................................................56
R 檔案 ...........................................................................................................56
Java 原始碼 ...................................................................................................57
4.6 構建項目 .......................................................................................................58
4.7 Android 仿真器 .............................................................................................59
仿真器與真實手機對比 .................................................................................59
4.8 總結 ...............................................................................................................62
第5 章 主要構件 .......................................................... 63
5.1 一個實際的例子 ............................................................................................63
5.2 活動 ...............................................................................................................64
活動的生命周期 ............................................................................................64
5.3 意圖 ...............................................................................................................68
5.4 服務 ...............................................................................................................69
5.5 內容提供器 ...................................................................................................70
5.6 廣播接收器 ...................................................................................................72
5.7 應用程式上下文 ............................................................................................72
5.8 總結 ...............................................................................................................74
第6 章 Yamba 項目概況 .............................................. 75
6.1 Yamba 應用程式 ............................................................................................75
6.2 設計理念 .......................................................................................................79
6.3 項目設計 .......................................................................................................80
6.4 第1 部分:Android 用戶界面 .......................................................................81
6.5 第2 部分:意圖、活動條及其他 ..................................................................82
6.6 第3 部分:Android 服務 ..............................................................................82
6.7 第4 部分:內容提供器 .................................................................................83
6.8 第5 部分:列表和適配器 .............................................................................83
6.9 第6 部分:廣播接收器 .................................................................................84
6.10 第7 部分:應用程式控制項 ...........................................................................84
6.11 第8 部分:聯網和Web(HTTP) ................................................................85
6.12 第9 部分:動態壁紙和處理程式 ................................................................85
6.13 總結 .............................................................................................................85
第7 章 Android 的用戶界面 ......................................... 87
7.1 創建用戶界面的兩種方法 .............................................................................87
聲明式用戶界面 ............................................................................................87
編程式用戶界面 ............................................................................................88
各取所長 .......................................................................................................88
7.2 視圖和布局 ...................................................................................................88
LinearLayout(線性布局) .............................................................................89
TableLayout(表格布局) ..............................................................................90
FrameLayout(幀布局) .................................................................................91
RelativeLayout(相對布局) ..........................................................................92
7.3 啟動Yamba 項目 ...........................................................................................93
7.4 StatusActivity 布局 ........................................................................................97
重要的控制項屬性 .......................................................................................... 101
字元串資源 ................................................................................................. 103
7.5 StatusActivity Java 類 ................................................................................. 104
釋放XML 到Java ....................................................................................... 104
初始化對象 ................................................................................................. 106
處理用戶事件 .............................................................................................. 107
7.6 在Android 中記錄訊息日誌 ........................................................................ 108
LogCat ......................................................................................................... 108
編譯代碼並構建項目:保存檔案 ................................................................ 109
添加Twitter API 庫 ..................................................................................... 112
更新清單檔案以獲取Internet 許可權 ............................................................. 113
7.7 Android 中的執行緒機制 ................................................................................ 114
單執行緒 ......................................................................................................... 114
多執行緒的執行 .............................................................................................. 115
AsyncTask(異步任務) ............................................................................... 116
7.8 其他UI 事件 ............................................................................................... 119
7.9 備用資源 ..................................................................................................... 124
7.10 總結 ........................................................................................................... 127
第8 章 片段 .............................................................. 129
8.1 片段示例 ..................................................................................................... 129
8.2 片段的生命周期 .......................................................................................... 136
8.3 動態添加片段 .............................................................................................. 137
8.4 總結 ............................................................................................................. 139
第9 章 意圖、活動條及其他 ....................................... 141
9.1 首選項 ......................................................................................................... 141
首選項資源 ................................................................................................. 142
SettingsActivity ........................................................................................... 145
更新清單檔案 .............................................................................................. 147
9.2 活動條 ......................................................................................................... 148
創建一個空白主活動 ................................................................................... 149
選單資源 ..................................................................................................... 150
Android 的系統資源 .................................................................................... 152
載入選單 ..................................................................................................... 153
更新StatusActivity 來處理選單事件 ........................................................... 154
9.3 共享首選項及更新訊息片段 ....................................................................... 155
9.4 檔案系統簡介 .............................................................................................. 157
訪問檔案系統 .............................................................................................. 158
檔案系統分區 .............................................................................................. 158
系統分區 ..................................................................................................... 158
SD 卡分區 ................................................................................................... 158
用戶數據分區 .............................................................................................. 160
檔案系統安全 .............................................................................................. 161
9.5 總結 ............................................................................................................. 161
第10 章 服務 ............................................................ 163
10.1 示例服務:RefreshService ........................................................................ 164
創建RefreshService Java 類 ........................................................................ 164
介紹IntentService ....................................................................................... 166
更新清單檔案 .............................................................................................. 167
添加選單項 ................................................................................................. 168
更新選項選單處理 ...................................................................................... 168
測試服務 ..................................................................................................... 169
10.2 從Yamba 提取數據 ................................................................................... 169
測試服務 ..................................................................................................... 172
10.3 總結 ...............................................................................................172
第11 章 內容提供器 .................................................. 175
11.1 Android 上的資料庫 .................................................................................. 175
關於SQLite ................................................................................................. 176
DbHelper ..................................................................................................... 176
資料庫模式及其創建 ................................................................................... 177
四個主要操作 .............................................................................................. 177
游標 ............................................................................................................. 178
11.2 訊息契約類 ................................................................................................ 179
11.3 更新RefreshService .................................................................................. 181
測試服務 ..................................................................................................... 184
11.4 內容提供器 ................................................................................................ 186
11.5 創建一個內容提供器 ................................................................................. 187
定義URI ..................................................................................................... 187
獲取數據類型 .............................................................................................. 189
插入數據 ..................................................................................................... 191
更新數據 ..................................................................................................... 192
刪除數據 ..................................................................................................... 193
查詢數據 ..................................................................................................... 194
更新Android 清單檔案 ............................................................................... 199
更新RefreshService .................................................................................... 200
11.6 總結 ........................................................................................................... 201
第12 章 列表和適配器 ............................................... 203
12.1 主活動 ....................................................................................................... 203
12.2 基本的主活動 ............................................................................................ 203
12.3 時間表片段 ............................................................................................... 205
創建列表項布局 .......................................................................................... 206
12.4 關於適配器 ............................................................................................... 207
12.5 載入數據 ................................................................................................... 208
12.6 通過ViewBinder 定製邏輯 ....................................................................... 211
12.7 詳情視圖 ................................................................................................... 213
詳情片段 ..................................................................................................... 214
詳情活動 ..................................................................................................... 216
註冊到清單檔案 .......................................................................................... 217
主活動,橫向視圖 ...................................................................................... 217
更新時間表片段 .......................................................................................... 218
12.8 總結 ........................................................................................................... 221
第13 章 廣播接收器 .................................................. 223
13.1 關於廣播接收器 ........................................................................................ 223
13.2 開機接收器 ............................................................................................... 224
將BootReceiver 註冊到Android 清單檔案 ................................................. 224
測試開機接收器 .......................................................................................... 225
13.3 警報和系統服務 ........................................................................................ 225
13.4 廣播意圖 ................................................................................................... 227
通知接收器 ................................................................................................. 230
13.5 總結 ........................................................................................................... 231
第14 章 應用程式控制項 ............................................... 233
14.1 通過控制項使用內容提供器 ......................................................................... 233
實現YambaWidget 類 ................................................................................. 234
創建XML 布局 ........................................................................................... 236
創建AppWidgetProviderInfo 檔案 .............................................................. 238
更新清單檔案 .............................................................................................. 238
測試控制項 ..................................................................................................... 239
14.2 總結 ........................................................................................................... 239
第15 章 聯網和Web 概述 .......................................... 241
15.1 簡單的例子 ............................................................................................... 241
15.2 聯網基礎 ................................................................................................... 242
15.3 HTTP API .................................................................................................. 244
15.4 Apache HTTP 客戶端 ................................................................................ 245
15.5 HttpUrlConnection .................................................................................... 248
15.6 使用AsyncTask 和AsyncTaskLoader 在後台聯網 .................................... 251
15.7 總結 ........................................................................................................... 251
第16 章 互動與動畫:動態壁紙和處理程式 ................ 253
16.1 動態壁紙 ................................................................................................... 253
16.2 處理程式 ................................................................................................... 260
16.3 總結 ........................................................................................................... 262
索引 ........................................................................... 263
作者簡介
Marko Gargenta(馬爾科)是Twitter大學的校長,他負責在Android和其他開源技術方面對Twitter的工程師進行培訓。此前,他是Marakana(由Twitter收購)的創始人之一,也是Android訓練營課程的創造者。
Masumi Nakamura(中村真澄)是Placester公司工程副總裁和TechStars的教師,有超過15年的軟體行業經驗,他熟悉軟體的各方面,從移動開發到擴展大規模後台系統,而且他還在運營Paypal公司的一個數據科學團隊。
媒體評論
本書作者Marko Gargenta是一位經驗豐富的專業講師。現在他將Android訓練營課程的精華提煉成這本易讀的手冊。本書引導讀者快速邁出Android編程的第一步,然後大步深入介紹服務、意圖、廣播接收器等內容。
——Ed Burnette Hello, Android的作者