基本信息
【作者】 | | 【編輯】 | |
【ISBN】 | 978-7-115-41274-4 | 【日期】 | 2016-03 |
【】 | 1 | 【印次】 | 1 |
【頁數】 | 589頁 | 【字數】 | |
【開本】 | 16 | 【定價】 | 89元 |
圖書簡介
本書詳細介紹了Android網路開發的有關內容,全書共分為5篇,總計25章,從搭建Android開發環境和核心框架分析講起,依次講解了Android技術核心框架,網路開發技術基礎,HTTP數據通信,URL處理數據,處理XML數據,下載遠程數據,上傳數據,使用Socket實現數據通信,使用WebKit瀏覽網頁數據,Wi-Fi系統套用,藍牙系統套用,郵件套用,RSS套用,網路視頻處理,網路流量監控,網路RSS閱讀器,開發一個郵件系統,在Android中開發移動微博套用、網路防火牆系統,開發Web版的電話本管理系統、移動微信系統等知識。本書幾乎涵蓋了Android網路套用中的所有主要內容,講解方法通俗易懂。
本書適合Android初學者、Android愛好者以及Android底層開發人員學習使用,也可以作為相關培訓學校和大專院校相關專業的教學用書。
目錄
第1篇 基礎知識篇
第1章 Android技術概述 2
1.1 智慧型手機系統介紹 2
1.1.1 何謂智慧型手機 2
1.1.2 Android 5.0的突出變化 2
1.2 搭建Android套用開發環境 3
1.2.1 安裝Android SDK的系
統要求 4
1.2.2 安裝JDK 4
1.2.3 獲取並安裝Eclipse和Android
SDK 7
1.2.4 安裝ADT 8
1.2.5 設定Android SDK Home 9
1.2.6 驗證開發環境 10
1.2.7 創建Android虛擬設備
(AVD) 10
1.2.8 啟動AVD模擬器 12
1.2.9 解決搭建環境過程中的
常見問題 14
第2章 Android技術核心框架分析 17
2.1 簡析Android安裝檔案 17
2.1.1 Android SDK目錄結構 17
2.1.2 android.jar及內部結構 18
2.1.3 閱讀SDK幫助文檔 18
2.1.4 常用的SDK工具 19
2.2 演示官方實例 20
2.3 剖析Android系統架構 21
2.3.1 Android體系結構介紹 21
2.3.2 Android套用工程檔案組成 23
2.4 簡述五大組件 25
2.4.1 用Activity來表現界面 25
2.4.2 用Intent和Intent Filter
實現切換 26
2.4.3 Service為你服務 26
2.4.4 用Broadcast Intent Receiver
傳送廣播 27
2.4.5 用Content Provider存儲
數據 27
2.5 進程和執行緒 27
2.5.1 先看進程 27
2.5.2 再看執行緒 28
2.5.3 應用程式的生命周期 28
2.6 第一段Android程式 30
第3章 網路開發技術基礎 34
3.1 HTML簡介 34
3.1.1 HTML初步 34
3.1.2 字型格式設定 35
3.1.3 使用標示標記 37
3.1.4 使用區域和段落標記 37
3.1.5 使用表格標記 38
3.1.6 使用表單標記 41
3.2 CSS技術基礎 43
3.2.1 基本語法 43
3.2.2 CSS屬性介紹 44
3.2.3 CSS編碼規範 46
3.3 JavaScript技術基礎 46
3.3.1 JavaScript概述 47
3.3.2 JavaScript運算符 47
3.3.3 JavaScript循環語句 48
3.3.4 JavaScript函式 50
3.3.5 JavaScript事件 52
第2篇 網路數據通信篇
第4章 HTTP數據通信 56
4.1 HTTP基礎 56
4.1.1 HTTP概述 56
4.1.2 HTTP協定的功能 56
4.1.3 Android中的HTTP 57
4.2 使用Apache接口 58
4.2.1 Apache接口基礎 58
4.2.2 Apache套用要點(1) 58
4.2.3 Apache套用要點(2) 61
4.3 使用標準的Java接口 68
4.3.1 IP位址 68
4.3.2 URL地址 69
4.3.3 套接字Socket類 69
4.3.4 URLConncetion類 70
4.3.5 在Android中使用java.net 70
4.4 使用Android網路接口 72
4.5 實戰演練 72
4.5.1 實戰演練——在手機螢幕中
傳遞HTTP參數 72
4.5.2 實戰演練——在Android手機
中通過Apache HTTP訪問
HTTP資源 76
第5章 URL處理數據 79
5.1 URL和URLConnection 79
5.1.1 URL類詳解 79
5.1.2 實戰演練——在手機螢幕中
顯示QQ空間中的照片 84
5.1.3 實戰演練——從網路中下載
圖片作為螢幕背景 86
5.2 HttpURLConnection詳解 89
5.2.1 HttpURLConnection的主要
用法 89
5.2.2 實戰演練——在Android手機
螢幕中顯示網路中的圖片 91
5.2.3 在手機螢幕中顯示網頁 93
第6章 處理XML數據 96
6.1 XML技術基礎 96
6.1.1 XML的概述 96
6.1.2 XML的語法 96
6.1.3 獲取XML文檔 97
6.2 使用SAX解析XML數據 98
6.2.1 SAX的原理 98
6.2.2 基於對象和基於事件的接口 99
6.2.3 常用的接口和類 100
6.2.4 實戰演練——在Android系統
中使用SAX解析XML數據 103
6.3 使用DOM解析XML 105
6.3.1 DOM概述 105
6.3.2 DOM的結構 105
6.3.3 實戰演練——在Android系統
中使用DOM解析XML
數據 107
6.4 Pull解析技術 109
6.4.1 Pull解析原理 109
6.4.2 實戰演練——在Android
系統中使用Pull解析
XML數據 110
6.5 實戰演練——3種解析方式的
綜合演練 112
第7章 下載遠程數據 119
7.1 下載網路中的圖片數據 119
7.2 下載網路中的JSON數據 121
7.2.1 JSON基礎 121
7.2.2 實戰演練——遠程下載
伺服器中的JSON數據 122
7.3 下載某個網頁的源碼 125
7.4 遠程獲取多媒體檔案 127
7.4.1 實戰演練——下載並播放
網路中的MP3 127
7.4.2 實戰演練——下載線上鈴聲 133
7.5 多執行緒下載 137
7.5.1 多執行緒下載檔案的過程 137
7.5.2 實戰演練——在Android
系統中實現多執行緒下載 138
7.6 遠程下載並安裝APK檔案 150
7.6.1 APK基礎 150
7.6.2 實戰演練——在Android系統
中下載並安裝APK檔案 152
第8章 上傳數據 157
8.1 實戰演練——上傳檔案到遠程
伺服器 157
8.2 使用Get方式上傳數據 159
8.3 使用Post方式上傳數據 163
8.4 使用HTTP協定實現上傳 166
8.4.1 一段演示代碼 166
8.4.2 實戰演練——HTTP協定
實現檔案上傳 171
第9章 使用Socket實現數據通信 176
9.1 Socket編程初步 176
9.1.1 TCP/IP協定基礎 176
9.1.2 UDP協定 177
9.1.3 基於Socket的Java網路
編程 177
9.2 TCP編程詳解 178
9.2.1 使用ServerSocket 179
9.2.2 使用Socket 179
9.2.3 TCP中的多執行緒 181
9.2.4 實現非阻塞Socket通信 184
9.3 UDP編程 188
9.3.1 使用DatagramSocket 188
9.3.2 使用MulticastSocket 192
9.4 實戰演練——在Android中使用
Socket實現數據傳輸 195
第10章 使用WebKit瀏覽網頁數據 198
10.1 WebKit源碼分析 198
10.1.1 Java層框架 198
10.1.2 C/C++層框架 202
10.2 分析WebKit的操作過程 205
10.2.1 WebKit初始化 205
10.2.2 載入數據 206
10.2.3 刷新繪製 207
10.3 WebView詳解 208
10.3.1 WebView介紹 208
10.3.2 實現WebView的兩種方式 210
10.3.3 WebView的幾個常見功能 212
10.4 實戰演練 217
10.4.1 實戰演練——在手機螢幕
中瀏覽網頁 217
10.4.2 實戰演練——載入一個指定
的HTML程式 219
10.4.3 實戰演練——使用WebView
載入JavaScript程式 220
10.5 使用WebView的注意事項 223
第3篇 移動Web套用篇
第11章 HTML5技術初步 226
11.1 HTML5介紹 226
11.1.1 發展歷程 226
11.1.2 HTML5的吸引力 226
11.2 新特性之視頻處理 227
11.2.1 video標記 227
11.2.2 video標記的屬性 228
11.3 新特性之音頻處理 231
11.3.1 audio標記 231
11.3.2 audio標記的屬性 232
11.4 新特性之canvas 235
11.4.1 canvas標記介紹 235
11.4.2 HTML DOM Canvas對象 236
11.4.3 實戰演練——實現坐標
定位 236
11.4.4 實戰演練——在指定位置
畫線 237
11.4.5 實戰演練——繪製一個圓 238
11.4.6 實戰演練——用漸變色填充
一個矩形 238
11.4.7 實戰演練——顯示一幅指定
的圖片 239
11.5 新特性之Web存儲 239
11.5.1 Web存儲介紹 239
11.5.2 HTML5中Web存儲的
意義 240
11.5.3 兩種存儲方法 240
11.6 表單的新特性 242
11.6.1 全新的Input類型 242
11.6.2 全新的表單元素 245
11.6.3 全新的表單屬性 246
第12章 為Android開發網頁 252
12.1 準備工作 252
12.1.1 搭建開發環境 252
12.1.2 實戰演練——編寫一個適用
於Android系統的網頁 253
12.1.3 控制頁面的縮放 256
12.2 添加Android的CSS 256
12.2.1 編寫基本的樣式 256
12.2.2 添加視覺效果 258
12.3 添加JavaScript 259
12.3.1 jQuery框架介紹 259
12.3.2 具體實踐 260
12.4 使用Ajax 262
實戰演練——在Android系統
中開發一個Ajax網頁 262
12.5 讓網頁動起來 266
12.5.1 一個開源框架——JQTouch 266
12.5.2 實戰演練——在Android系統
中使用JQTouch框架開發
網頁 266
第13章 jQuery Mobile基礎 273
13.1 jQuery Mobile簡介 273
13.1.1 jQuery介紹 273
13.1.2 jQuery Mobile的特點 274
13.1.3 對瀏覽器的支持 274
13.1.4 jQuery Mobile的4個突出
特性 275
13.2 jQuery的基本語法 277
13.2.1 頁面模板 277
13.2.2 多頁面模板 280
13.2.3 對話框 281
13.3 實現導航功能 282
13.3.1 頁眉欄 282
13.3.2 頁腳 284
13.3.3 工具列 285
13.4 按鈕 287
13.4.1 連結按鈕 287
13.4.2 表單按鈕 288
13.5 表單 289
13.5.1 表單基礎 289
13.5.2 在表單中輸入文本 290
13.6 列表 293
13.6.1 列表基礎 293
13.6.2 內置列表 294
13.6.3 列表分割線 295
第4篇 典型網路套用篇
第14章 Wi-Fi系統套用 298
14.1 了解Wi-Fi系統的結構 298
14.1.1 Wi-Fi概述 298
14.1.2 Wi-Fi層次結構 298
14.1.3 Wi-Fi與Linux的差異 300
14.2 分析源碼 300
14.2.1 本地部分 300
14.2.2 JNI部分 303
14.2.3 Java FrameWork部分 304
14.2.4 Setting中的設定部分 305
14.3 開發Wi-Fi應用程式 306
14.3.1 類WifiManager 306
14.3.2 實戰演練——在Android系統
中控制Wi-Fi 309
14.3.3 實戰演練——控制Android
系統中的Wi-Fi 315
14.3.4 實戰演練——Wi-Fi綜合
演練 317
第15章 藍牙系統套用 324
15.1 了解藍牙系統的結構 324
15.1.1 藍牙概述 324
15.1.2 藍牙層次結構 325
15.2 分析藍牙模組的源碼 326
15.2.1 初始化藍牙晶片 326
15.2.2 藍牙服務 327
15.2.3 管理藍牙電源 327
15.3 與藍牙相關的類 328
15.3.1 BluetoothSocket類 328
15.3.2 BluetoothServerSocket類 329
15.3.3 BluetoothAdapter類 330
15.3.4 BluetoothClass.Service類 336
15.3.5 BluetoothClass.Device類 336
15.4 在Android平台開發藍牙套用
的過程 337
15.5 實戰演練 341
15.5.1 實戰演練——開發一個控制
玩具車的藍牙遙控器 341
15.5.2 實戰演練——開發一個
Android藍牙控制器 347
15.5.3 實戰演練——開發一個
Android藍牙通信系統 356
第16章 郵件套用 369
16.1 使用Android內置的郵件系統 369
16.1.1 實戰演練——在傳送簡訊時
實現E-mail郵件通知 369
16.1.2 實戰演練——來電時自動
郵件通知 372
16.1.3 實戰演練——實現一個簡易
郵件傳送系統 374
16.1.4 實戰演練——調用內置Gmail
傳送郵件 377
16.1.5 其他方法 381
16.2 使用SmsManager收發郵件 382
16.2.1 SmsManager基礎 382
16.2.2 實戰演練——使用
SmsManager實現一個
郵件傳送程式 383
16.3 commons-mail.jar和mail.jar 388
16.3.1 使用commons-mail.jar
傳送郵件 388
16.3.2 使用mail.jar接收郵件 390
第17章 RSS處理 395
17.1 RSS基礎 395
17.1.1 RSS的用途 395
17.1.2 RSS的基本語法 395
17.2 SAX技術介紹 397
17.2.1 SAX的原理 397
17.2.2 基於對象和基於事件
的接口 397
17.2.3 常用的接口和類 398
17.3 實戰演練——開發一個RSS程式 401
第18章 網路視頻處理 412
18.1 MediaPlayer視頻技術 412
18.1.1 MediaPlayer基礎 412
18.1.2 MediaPlayer的狀態 412
18.1.3 MediaPlayer方法的有效
狀態和無效狀態 415
18.1.4 MediaPlayer的接口 417
18.1.5 MediaPlayer的常量 417
18.1.6 MediaPlayer的公共方法 417
18.2 VideoView技術 418
18.2.1 構造函式 419
18.2.2 公共方法 419
18.3 實戰演練——開發一個網路視頻
播放器 420
第19章 網路流量監控 427
19.1 TrafficStats類詳解 427
19.1.1 常量和公共方法 427
19.1.2 使用類TrafficStats
統計流量 428
19.2 實戰演練——開發一個流量統計
系統 430
19.2.1 實現界面布局 431
19.2.2 實現Activity檔案 434
19.2.3 實現數據處理模組的功能 439
19.2.4 設定許可權 442
第5篇 綜合實戰篇
第20章 網路RSS閱讀器 444
20.1 實現流程 444
20.2 具體實現 444
20.2.1 建立實體類 444
20.2.2 主程式檔案
ActivityMain.java 447
20.2.3 實現ContentHandler 449
20.2.4 主程式檔案ActivityShow
Description.java 451
20.2.5 主布局檔案main.xml 452
20.2.6 詳情主布局檔案showdescription.xml 452
20.3 打包、簽名和發布 454
20.3.1 申請會員 454
20.3.2 生成簽名檔案 455
20.3.3 使用簽名檔案 460
20.3.4 發布 461
第21章 開發一個郵件系統 462
21.1 項目介紹 462
21.1.1 項目背景介紹 462
21.1.2 項目目的 462
21.2 系統需求分析 463
21.2.1 構成模組 463
21.2.2 系統流程 465
21.2.3 功能結構圖 465
21.2.4 系統需求 465
21.3 數據存儲設計 466
21.3.1 用戶信息類 466
21.3.2 SharedPreferences 470
21.4 具體編碼 471
21.4.1 歡迎界面 471
21.4.2 系統主界面 474
21.4.3 信箱類型設定 479
21.4.4 信箱收取設定 481
21.4.5 信箱傳送設定 485
21.4.6 信箱用戶檢查 489
21.4.7 設定用戶別名 492
21.4.8 用戶郵件編輯 495
第22章 在Android中開發移動微博套用 502
22.1 微博介紹 502
22.2 微博開發技術介紹 503
22.2.1 XML-RPC技術 503
22.2.2 Meta Weblog API客戶端 505
22.3 在Android上開發移動部落格
發布器 505
22.3.1 XML請求 505
22.3.2 常用接口 505
22.3.3 具體實現 506
22.4 分析騰訊Android版微博API 511
22.4.1 源碼和jar包下載 511
22.4.2 具體使用 511
22.5 詳解新浪Android版微博API 515
22.5.1 新浪微博圖片縮放的
開發實例 516
22.5.2 添加分享到新浪微博 521
22.5.3 通過JSON對象獲取登錄
新浪微博 524
22.5.4 實現OAuth認證 526
第23章 網路流量防火牆系統 528
23.1 系統需求分析 528
23.2 編寫布局檔案 529
23.3 編寫主程式檔案 530
23.3.1 主Activity檔案 531
23.3.2 幫助Activity檔案 539
23.3.3 公共庫函式檔案 539
23.3.4 系統廣播檔案 547
23.3.5 登錄驗證 548
23.3.6 打開/關閉某一個實施控制項 549
第24章 開發Web版的電話本管理系統 552
24.1 需求分析 552
24.1.1 產生背景 552
24.1.2 功能分析 552
24.2 創建Android工程 553
24.3 實現系統主界面 554
24.4 實現信息查詢模組 555
24.5 實現系統管理模組 556
24.6 實現信息添加模組 559
24.7 實現信息修改模組 561
24.8 實現信息刪除模組和更新模組 563
第25章 移動微信系統 564
25.1 微信系統基礎 564
25.1.1 微信的特點 564
25.1.2 微信和Q信、騰訊的關係 564
25.2 使用Android ViewPager 565
25.3 開發一個微信系統 569
25.3.1 啟動界面 569
25.3.2 系統導航界面 570
25.3.3 系統登錄界面 577
25.3.4 傳送信息界面 580
25.3.5 搖一搖界面 584