Android物聯網開發細緻入門與最佳實踐

Android物聯網開發細緻入門與最佳實踐

《Android物聯網開發細緻入門與最佳實踐》是2016年中國鐵道出版社出版的圖書,作者是李天祥。

基本介紹

  • 中文名:Android物聯網開發細緻入門與最佳實踐
  • 作者:李天祥
  • 出版社:中國鐵道出版社
  • ISBN:9787113216962
內容簡介,圖書目錄,

內容簡介

本書循序漸進地講解了基於Android系統開發物聯網應用程式的基本知識、關鍵技術和實戰流程。在講解每一個知識時,都遵循了理論聯繫實際的講解方式,從核心分析到接口API實現,再到實戰演練,後到綜合實例演練,徹底剖析了開發物聯網項目的完整實現流程。

圖書目錄

第1章 Android系統介紹
1.1 智慧型手機系統概述 1
1.1.1 昨日王者——Symbian(塞班) 1
1.1.2 谷歌公司的Android 2
1.1.3 Mac公司的iOS 3
1.1.4 微軟公司的Windows Phone 3
1.1.5 黑莓公司的Blackberry OS 4
1.2 總結Android的核心優勢 5
1.2.1 強有力的業界支持 5
1.2.2 研發陣容強大 5
1.2.3 為開發人員“精心定製” 5
1.2.4 開源 6
1.3 Android系統架構概覽 6
1.3.1 底層作業系統層(OS) 7
1.3.2 運行庫(Libraries)和Android 運行環境(RunTime) 7
1.3.3 Application Framework(應用程式框架) 8
1.3.4 頂層應用程式(Application) 8
1.4 核心組件 8
1.4.1 Activity界面 8
1.4.2 Intent和Intent Filters 9
1.4.3 Service服務 9
1.4.4 Broadcast Receiver傳送廣播 10
1.4.5 用Content Provider存儲數據 10
1.5 物聯網技術改變未來 11
1.5.1 什麼是物聯網 11
1.5.2 發展歷程 11
1.5.3 Android正在成為物聯網標準作業系統 12
1.6 Android智慧型設備蓬勃發展 13
1.6.1 常見的Android智慧型設備 13
1.6.2 新興熱點——可穿戴設備 15
1.6.3 可穿戴設備的發展前景分析 18
1.6.4 Android對穿戴設備的支持——Android Wear 19
第2章 搭建Android開發環境
2.1 獲取Android源碼 20
2.1.1 在Linux系統獲取Android源碼 20
2.1.2 在Windows平台獲取Android源碼 21
2.2 編譯源碼 27
2.2.1 常見的錯誤分析 28
2.2.2 實踐演練——演示兩種編譯Android程式的方法 29
2.3 搭建Android 套用開發環境 33
2.3.1 安裝JDK 34
2.3.2 獲取並安裝Eclipse和Android SDK 37
2.3.3 快速安裝SDK 39
2.3.4 安裝ADT 40
2.3.5 驗證設定 42
2.3.6 創建Android虛擬設備(AVD) 44
2.3.7 啟動AVD模擬器 46
第3章 傳輸網路數據
3.1 HTTP通信 48
3.1.1 使用HTTP傳輸數據 48
3.1.2 使用Apache接口傳輸數據 49
3.1.3 使用java.net傳輸數據 54
3.1.4 使用Android網路接口傳輸數據 56
3.1.5 實例3-1:在物聯網設備螢幕中傳遞HTTP參數 57
3.1.6 實例3-2:在物聯網設備中訪問HTTP地圖 60
3.2 使用Socket傳輸數據 62
3.2.1 Socket Java網路開發基礎 63
3.2.2 使用TCP協定傳輸數據 64
3.3 下載遠程數據 66
3.3.1 實例3-3:在物聯網設備中下載網路伺服器中的圖片 67
3.3.2 實例3-4:下載並播放網路MP3 67
3.4 遠程上傳數據 73
3.4.1 實例3-5:上傳物聯網設備中的檔案到遠程伺服器 73
3.4.2 實例3-6:在物聯網設備中採用GET方式向伺服器傳遞數據 75
3.5 處理XML數據 79
3.5.1 XML的概述 79
3.5.2 XML的語法 79
3.5.3 實例3-7:在物聯網中使用SAX解析XML數據 80
3.5.4 實例3-8:在物聯網中使用DOM解析XML數據 83
第4章 使用藍牙傳輸數據
4.1 藍牙傳輸技術介紹 85
4.2 BLE藍牙傳輸技術介紹 86
4.2.1 低功耗藍牙的架構 86
4.2.2 低功耗藍牙分類 87
4.2.3 低功耗藍牙的特點 88
4.2.4 BLE和傳統藍牙BR/EDR的對比 88
4.3 藍牙規範 89
4.3.1 Bluetooth常用規範 89
4.3.2 藍牙協定體系結構 90
4.3.3 低功耗(BLE)藍牙協定 91
4.4 低功耗藍牙協定棧 92
4.4.1 什麼是低功耗藍牙協定棧? 92
4.4.2 藍牙協定體系中的協定 93
4.5 TI公司的低功耗藍牙解決方案 95
4.5.1 獲取藍牙協定棧 95
4.5.2 BLE藍牙協定棧結構 96
4.5.3 BLE低功耗藍牙系統架構 98
4.5.4 硬體抽象層HAL和BLE低功耗藍牙協定棧 99
第5章 Android藍牙系統詳解
5.1 Android系統中的藍牙模組 104
5.2 和藍牙相關的接口類 106
5.2.1 BluetoothSocket類 106
5.2.2 BluetoothServerSocket類 107
5.2.3 BluetoothAdapter類 108
5.2.4 BluetoothClass.Service類 115
5.2.5 BluetoothClass.Device類 115
5.3 Android中的低功耗藍牙協定棧 116
5.3.1 低功耗藍牙協定棧基礎 116
5.3.2 低功耗藍牙API詳解 116
5.4 實例5-1:使用藍牙控制電風扇的轉動 127
第6章 物聯網語音識別開發詳解
6.1 語音識別技術概述 140
6.1.1 語音識別技術的發展歷史 140
6.1.2 語音識別技術的發展歷程 141
6.2 Text-To-Speech語音識別技術 141
6.2.1 Text-To-Speech基礎 141
6.2.2 總結Text-To-Speech開發流程 142
6.2.3 實例6-1:使用Text-To-Speech實現語音識別 145
6.2.4 實例6-2:物聯網中文語音識別 147
6.3 Voice Recognition語音識別技術 151
6.3.1 Voice Recognition技術基礎 152
6.3.2 實例6-3:使用Voice Recognition實現語音識別 154
6.4 實例6-4:將物聯網設備中的提醒文字轉換為語音 157
第7章 物聯網設備手勢識別
7.1 Android事件監聽機制詳解 162
7.1.1 總結Android中的監聽事件 162
7.1.2 Android事件偵聽器的回調方法 163
7.1.3 Android事件處理模型 165
7.1.4 基於自定義監聽器的事件處理 166
7.2 手勢識別開發詳解 168
7.2.1 手勢識別類GestureDetector 168
7.2.2 手勢檢測器類GestureDetector 169
7.2.3 手勢識別處理事件和方法 172
7.3 實例7-1:通過單擊的方式移動圖片 172
7.4 實例7-2:實現常用的手勢識別操作 176
7.5 實例7-3:實現手勢翻頁效果 179
第8章 在物聯網設備中處理多媒體數據
8.1 Android多媒體系統架構基礎 186
8.1.1 OpenMax框架介紹 187
8.1.2 OpenCore框架介紹 188
8.1.3 Stagefright框架介紹 189
8.2 Graphics類詳解 190
8.2.1 Graphics類基礎 190
8.2.2 使用Graphics類 190
8.2.3 實例8-1:在物聯網設備中使用矩形類Rect和RectF 191
8.3 二維動畫 194
8.3.1 類Drawable 194
8.3.2 實現Tween動畫效果 196
8.3.3 實例8-2:在物聯網設備中實現Tween動畫效果 196
8.3.4 實例8-3:演示Tween動畫的四種動畫效果 198
8.3.5 實現Frame動畫效果 202
8.4 OpenGL ES詳解 203
8.4.1 OpenGL ES基礎 203
8.4.2 Android用到OpenGL ES 204
8.4.3 OpenGL ES的基本操作 204
8.4.4 實例8-4:使用OpenGL ES繪製一個正方形 208
8.5 音頻開發 211
8.5.1 音頻接口類 211
8.5.2 AudioManager控制鈴聲 213
8.5.3 實例8-5:設定簡訊提示鈴聲 215
8.6 錄音詳解 221
8.6.1 使用MediaRecorder接口錄製音頻 221
8.6.2 使用AudioRecord接口錄音 224
8.7 在物聯網設備中播放音樂 226
8.7.1 使用AudioTrack播放音頻 227
8.7.2 使用MediaPlayer播放音頻 227
8.7.3 使用SoundPool播放音頻 228
第9章 Android感測器系統架構詳解
9.1 Android感測器系統概述 229
9.2 Android感測器套用開發基礎 231
9.2.1 查看包含的感測器 231
9.2.2 模擬器測試工具——
SensorSimulator 232
9.2.3 實例9-1:檢測當前設備支持的感測器 236
第10章 光線感測器和磁場感測器開發詳解
10.1 光線感測器詳解 239
10.1.1 光線感測器介紹 239
10.1.2 使用光線感測器的方法 240
10.1.3 實例10-1:獲取物聯網設備中光線感測器的值 241
10.1.4 實例10-2:顯示物聯網設備中光線感測器的強度 243
10.2 磁場感測器詳解 245
10.2.1 Android系統中的磁場感測器 246
10.2.2 實例10-3:獲取物聯網設備中磁場感測器的三個分量 246
10.2.3 實例10-4:在物聯網設備中使用磁場感測器 248
第11章 加速度感測器、方向感測器和陀螺儀感測器
11.1 加速度感測器詳解 258
11.1.1 Android系統中的加速度感測器 258
11.1.2 實例11-1:獲取X、Y、Z軸的加速度值 259
11.1.3 實例11-2:在物聯網設備中實現仿微信“搖一搖”效果 261
11.2 方向感測器詳解 266
11.2.1 Android中的方向感測器 266
11.2.2 實例11-3:測試當前物聯網設備的三個方向值 267
11.2.3 實例11-4:在物聯網設備中開發指南針程式 269
11.3 陀螺儀感測器開發詳解 271
11.4 實例11-5:在物聯網設備中使用加速度感測器和陀螺感測器 272
第12章 旋轉向量感測器、距離感測器和氣壓感測器
12.1 旋轉向量感測器開發詳解 286
12.1.1 Android中的旋轉向量感測器 286
12.1.2 實例12-1:確定當前物聯網設備的方向 287
12.2 距離感測器開發詳解 295
12.2.1 Android系統中的距離感測器 295
12.2.2 實例12-2:實現自動鎖屏功能 297
12.3 氣壓感測器開發詳解 303
12.3.1 氣壓感測器在智慧型手機中的套用 303
12.3.2 實例12-3:實現一個Android氣壓計 303
第13章 溫度感測器和濕度感測器
13.1 溫度感測器開發詳解 312
13.1.1 Android系統中溫度感測器 312
13.1.2 實例13-1:開發一個物聯網溫度計 314
13.1.3 實例13-2:測試設備電源的溫度 316
13.2 濕度感測器開發詳解 329
13.2.1 Android系統中的濕度感測器 329
13.2.2 實例13-3:獲取遠程濕度感測器的數據 330
第14章 物聯網條形碼識別開發詳解
14.1 Android拍照系統結構基礎 336
14.2 Camera系統底層架構分析 339
14.2.1 V4L2 API介紹 339
14.2.2 總結操作V4L2的流程 340
14.2.3 V4L2驅動框架 342
14.2.4 實現Video核心層 343
14.3 Camera系統的硬體抽象層 346
14.3.1 Android 2.1及其以前的版本 347
14.3.2 Android 2.2及其以後的版本 348
14.3.3 實現Camera硬體抽象層 349
14.4 Camera系統的Java部分 350
14.5 開發拍照應用程式 357
14.5.1 通過Intent調用系統的照相機Activity 357
14.5.2 調用Camera API拍照 358
14.5.3 總結Camera拍照的流程 359
14.6 解析二維碼 361
14.6.1 QR Code碼的特點 361
14.6.2 實例14-1:使用Android設備解析二維碼 362
第15章 物聯網NFC近場通信開發詳解
15.1 近場通信技術基礎 371
15.1.1 NFC技術的特點 371
15.1.2 NFC的工作模式 372
15.1.3 NFC和藍牙的對比 372
15.2 射頻識別開發技術概覽 373
15.2.1 RFID技術簡介 373
15.2.2 RFID技術的組成 373
15.2.3 RFID技術的特點 374
15.2.4 RFID技術的工作原理 375
15.3 Android系統中的NFC 375
15.3.1 分析Java層 376
15.3.2 分析JNI部分 392
15.3.3 分析底層 397
15.4 總結開發NFC APP的方法 397
15.5 綜合實例:在物聯網設備中使用NFC傳送訊息 401
第16章 物聯網穿戴開發技術詳解
16.1 Google Now開發基礎 406
16.1.1 Google Now介紹 406
16.1.2 Google Now的用法 407
16.2 Android Wear詳解 409
16.2.1 什麼是Android Wear 409
16.2.2 搭建Android Wear開發環境 411
16.3 開發Android Wear程式 415
16.3.1 創建通知 415
16.3.2 創建聲音 418
16.3.3 給通知添加頁面 421
16.3.4 通知堆 422
16.3.5 通知語法介紹 423
16.4 實例16-1:開發一個Android Wear
程式 424
16.5 實例16-2:實現手機和Android Wear的互動 431
第17章 Android智慧型家居系統
17.1 需求分析 445
17.1.1 背景介紹 445
17.1.2 感測技術的推動 446
17.1.3 Android與智慧型家居的
緊密聯繫 446
17.2 系統功能模組介紹 447
17.3 系統主界面 447
17.3.1 實現布局檔案 447
17.3.2 實現程式檔案 448
17.4 系統設定 450
17.4.1 總體配置 450
17.4.2 系統總體配置 450
17.4.3 構建資料庫 453
17.5 家用電器控制模組 455
17.5.1 家用電器控制主界面 456
17.5.2 溫度控制界面 458
17.5.3 電燈控制界面 459
17.6 快速預案管理模組 462
17.6.1 天氣情況 462
17.6.2 歷史數據 467
17.6.3 系統設定 470
第18章 Android健康心率計系統
18.1 系統介紹 476
18.1.1 什麼是心率 476
18.1.2 系統功能 477
18.2 具體實現 477
18.2.1 掃描藍牙設備 477
18.2.2 藍牙控制界面 480
18.2.3 藍牙BLE設備適配器 489
18.2.4 藍牙BLE服務適配器 491
18.2.5 感測器測試心率 494
18.2.6 圖形化顯示心率值 495
第19章 Android行車記錄儀
19.1 選擇線路規劃目的地 498
19.1.1 系統主Activity界面 498
19.1.2 布局檔案capture.xml 501
19.2 Adapter適配器處理 503
19.3 生成騎行路線圖 506
19.3.1 實時導航服務 506
19.3.2 線路計畫監聽服務 507
19.3.3 線路任務服務 507
19.3.4 在地圖中顯示行駛線路 509
19.3.5 生成導航視圖 509
19.4 街道分析 511
19.5 海拔數據分析 513
第20章 Android多功能電視盒子
20.1 Android TV介紹 515
20.2 系統模組結構 516
20.3 系統主界面 517
20.3.1 系統主界面布局 517
20.3.2 系統主界面Activity 518
20.4 本地服務 526
20.4.1 本地服主務界面 526
20.4.2 應用程式管理界面 530
註:以下內容讀者可在原始碼下載包中學習使用。
附錄A
A.1 編譯Android Kernel 534
A.1.1 獲取Goldfish核心代碼 534
A.1.2 獲取MSM核心代碼 537
A.1.3 獲取OMAP核心代碼 537
A.1.4 編譯Android的Linux核心 537
附錄B
B.1 Android藍牙系統架構分析 540
B.1.1 初始化藍牙晶片 540
B.1.2 藍牙服務 541
B.1.3 管理藍牙電源 542
B.2 Android BlueDroid架構詳解 542
B.2.1 Android系統中BlueDroid的架構 542
B.2.2 Application Framework層分析 542
B.2.3 分析Bluetooth System
Service層 550
B.2.4 JNI層詳解 551
B.2.5 HAL層詳解 556
附錄C
C.1 感測器之Java層詳解 557
C.2 感測器之Frameworks層詳解 563
C.2.1 監聽感測器的變化 563
C.2.2 註冊監聽 563
C.3 感測器之JNI層詳解 575

相關詞條

熱門詞條

聯絡我們