編輯推薦
講解Android 傳感器的書籍,循序漸進的全麵剖析瞭Android傳感器的特性和功能。
本書幾乎涵蓋瞭Android傳感器和外設開發所需的所有主要內容,如Android傳感器係統分析、地圖定位、光綫傳感器、接近警報、磁場傳感器、加速度傳感器、方嚮傳感器、陀螺儀傳感器、鏇轉嚮量傳感器、距離傳感器、氣壓傳感器、溫度傳感器、濕度傳感器、Android藍牙係統、語音識彆、手勢識彆、NFC近場通信、拍照解析條形碼、麥剋風音頻錄製、基於圖像處理的人臉識彆、行走軌跡記錄等知識。
本書循序漸進的全麵剖析瞭Android傳感器開發的基本知識,幾乎涵蓋瞭Android傳感器的所有內容。並且在講解過程中,細緻講解瞭每一個知識點的具體原理和具體用法。
內容簡介
本書主要介紹Android傳感器和外設的開發,共29章,主要包括Android開發技術基礎、獲取並編譯源碼、Android技術核心框架分析、Android傳感器係統分析、使用地圖定位、光綫傳感器詳解、接近警報傳感器詳解、磁場傳感器詳解、加速度傳感器詳解、方嚮傳感器詳解、陀螺儀傳感器詳解、鏇轉嚮量傳感器詳解、距離傳感器詳解、氣壓傳感器詳解、溫度傳感器詳解、濕度傳感器詳解、Android藍牙係統概述、低功耗藍牙技術詳解、語音識彆技術詳解、手勢識彆技術詳解、NFC近場通信技術詳解、拍照解析條形碼技術詳解、基於圖像處理的人臉識彆技術詳解、行走軌跡記錄器、手勢音樂播放器和智能傢居係統等。本書幾乎涵蓋瞭Android傳感器和外設開發所需的所有主要內容,講解方法通俗易懂。
本書適閤Android初學者、Android愛好者以及Android底層開發人員、傳感器開發人員、智能設備開發人員、Android外部設備開發工程師學習,也可以作為相關培訓學校和大專院校相關專業的教學用書。
作者簡介
硃元波,曾就職於中國聯通開發部,從事信號采集開發工作。現就職於東軟軟件,負責三星電子産品的Android産品定製,從事Androd雲端係統開發和數據通信開發。51cto客座Android和iOS專傢,定期參加火狐召開的開發專傢會議。
目錄
第1章 Android開發技術基礎 1
1.1 智能手機操作係統介紹 1
1.2 Android的巨大優勢 2
1.2.1 係齣名門 2
1.2.2 強大的開發團隊 2
1.2.3 Android係統開源 2
第2章 搭建Android應用開發環境 3
2.1 安裝Android SDK的係統要求 3
2.2 安裝JDK 3
2.3 安裝Eclipse和Android SDK 6
2.3.1 獲取並安裝Eclipse和
Android SDK 6
2.3.2 快速安裝SDK 8
2.4 安裝ADT 8
2.5 驗證設置 10
2.5.1 設定Android SDK Home 10
2.5.2 驗證開發環境 10
2.5.3 創建Android虛擬設備
(AVD) 11
2.6 啓動AVD模擬器 12
2.6.1 模擬器和真機究竟有何區彆 13
2.6.2 啓動AVD模擬器的基本流程 13
第3章 獲取並編譯源碼 14
3.1 在Linux係統獲取Android源碼 14
3.2 在Windows平颱獲取Android源碼 15
3.3 分析Android源碼結構 17
3.3.1 應用程序 18
3.3.2 應用程序框架 19
3.3.3 係統服務 20
3.3.4 係統程序庫 22
3.3.5 係統運行庫 24
3.3.6 硬件抽象層 25
3.4 編譯源碼 26
3.4.1 搭建編譯環境 26
3.4.2 開始編譯 26
3.4.3 在模擬器中運行 28
3.4.4 常見的錯誤分析 28
3.4.5 實踐演練——演示兩種編譯
Android程序的方法 29
3.5 編譯Android Kernel 32
3.5.1 獲取Goldfish內核代碼 32
3.5.2 獲取MSM內核代碼 34
3.5.3 獲取OMAP內核代碼 35
3.5.4 編譯Android的Linux內核 35
3.6 編譯源碼生成SDK 36
第4章 Android技術核心框架分析 40
4.1 分析Android的係統架構 40
4.1.1 Android體係結構介紹 40
4.1.2 Android應用工程文件組成 42
4.2 Android的五大組件 45
4.2.1 Activity界麵組件 45
4.2.2 Intent切換組件 45
4.2.3 Service服務組件 45
4.2.4 用Broadcast/Receiver廣播
機製組件 46
4.2.5 ContentProvider存儲組件 46
4.3 進程和綫程 46
4.3.1 什麼是進程 47
4.3.2 什麼是綫程 47
4.3.3 應用程序的生命周期 47
4.4 Android和Linux的關係 49
4.4.1 Android繼承於Linux 50
4.4.2 Android和Linux內核
的區彆 50
4.5 第一段Android程序 52
4.5.1 新建Android工程 52
4.5.2 調試程序 54
4.5.3 運行程序 54
第5章 Android傳感器係統分析 56
5.1 Android傳感器係統概述 56
5.2 分析Java層 57
5.3 分析Frameworks層 62
5.3.1 監聽傳感器的變化 62
5.3.2 注冊監聽 62
5.4 分析JNI層 71
5.4.1 分析android_hardware_
SensorManager.cpp 72
5.4.2 處理客戶端數據 75
5.4.3 處理服務端數據 77
5.4.4 封裝HAL層的代碼 87
5.4.5 消息隊列處理 91
5.5 分析HAL層 94
第6章 Android傳感器係統概覽 102
6.1 Android設備的傳感器係統 102
6.1.1 包含的傳感器 102
6.1.2 檢測當前設備支持的傳感器 103
6.2 使用SensorSimulator 105
6.3 查看傳感器的相關信息 107
第7章 地圖定位 120
7.1 位置服務 120
7.1.1 android.location功能類 120
7.1.2 實現定位服務功能 121
7.1.3 實戰演練——在Android設備
中實現GPS定位 123
7.2 及時更新位置信息 125
7.2.1 Maps庫類 125
7.2.2 使用LocationManager
及時監聽 126
7.2.3 實戰演練——在Android
設備中顯示當前位置的
坐標和海拔 127
7.3 在Android設備中使用地圖 134
7.3.1 準備工作 134
7.3.2 使用Map API密鑰的
基本流程 135
7.3.3 實戰演練——在Android設備
中使用榖歌地圖實現定位 137
7.4 在Android設備中實現地址查詢 141
7.5 在Android設備中實現路徑導航 144
第8章 光綫傳感器詳解 149
8.1 光綫傳感器基礎 149
8.1.1 光綫傳感器介紹 149
8.1.2 在Android中使用光綫
傳感器的方法 150
8.2 實戰演練——獲取設備中光綫
傳感器的值 151
8.3 實戰演練——顯示設備中光綫
傳感器的強度 152
8.4 實戰演練——顯示設備名稱和
光綫強度 154
8.5 實戰演練——智能樓宇燈光
控製係統 155
8.5.1 布局文件 156
8.5.2 實現程序文件 166
第9章 接近警報傳感器詳解 190
9.1 類Geocoder詳解 190
9.1.1 類Geocoder基礎 190
9.1.2 公共構造器 190
9.1.3 公共方法 190
9.1.4 Geocoder的主要功能 192
9.1.5 地理編碼和地理反編碼 193
9.2 實戰演練——在設備地圖中
快速查詢某個位置 195
9.3 實戰演練——接近某個位置時
實現自動提醒 197
第10章 磁場傳感器詳解 207
10.1 磁場傳感器基礎 207
10.1.1 什麼是磁場傳感器 207
10.1.2 磁場傳感器的分類 207
10.2 Android係統中的磁場傳感器 208
10.3 實戰演練——獲取磁場傳感器
的3個分量 209
10.4 實戰演練——演示常用傳感器
的基本用法 210
10.4.1 實現布局文件 210
10.4.2 實現程序文件 210
第11章 加速度傳感器詳解 217
11.1 加速度傳感器基礎 217
11.1.1 加速度傳感器的分類 217
11.1.2 加速度傳感器的主要
應用領域 218
11.2 Android係統中的加速度傳感器 219
11.2.1 實戰演練——獲取x、y、z軸
的加速度值 220
11.2.2 實戰演練——實現控件的
抖動效果 222
11.2.3 實戰演練——實現仿微信
“搖一搖”效果 224
11.3 綫性加速度傳感器詳解 229
11.3.1 綫性加速度傳感器的原理 229
11.3.2 實戰演練——測試小球
的運動 230
第12章 方嚮傳感器詳解 235
12.1 方嚮傳感器基礎 235
12.1.1 方嚮傳感器必備知識 235
12.1.2 Android中的方嚮傳感器 236
12.2 實戰演練——測試當前設備的
3個方嚮值 236
12.2.1 實現布局文件 236
12.2.2 實現主程序文件 237
12.3 實戰演練——開發一個指南針
程序 238
12.3.1 實現布局文件 238
12.3.2 實現程序文件 238
12.4 開發一個具有定位功能的指南針 240
12.4.1 實現布局文件 240
12.4.2 實現程序文件 242
第13章 陀螺儀傳感器詳解 251
13.1 陀螺儀傳感器基礎 251
13.2 Android中的陀螺儀傳感器 252
13.2.1 陀螺儀傳感器和加速度
傳感器的對比 252
13.2.2 智能設備中的陀螺儀
傳感器 252
13.3 實戰演練——聯閤使用互補濾波器
和陀螺儀傳感器 254
13.3.1 實現布局文件 255
13.3.2 實現主Activity文件 260
13.3.3 實現均值濾波器 266
13.3.4 測量各個平麵的值 267
13.3.5 傳感器處理 278
第14章 鏇轉嚮量傳感器詳解 290
14.1 Android中的鏇轉嚮量傳感器 290
14.2 實戰演練——確定設備當前的
具體方嚮 291
14.2.1 實現主Activity 291
14.2.2 獲取設備的鏇轉嚮量 298
第15章 距離傳感器詳解 301
15.1 距離傳感器基礎 301
15.1.1 距離傳感器介紹 301
15.1.2 Android係統中的距離
傳感器 302
15.2 實戰演練——使用距離傳感器
實現自動鎖屏功能 303
15.3 實戰演練——根據設備的距離
實現自動鎖屏功能 308
15.4 實戰演練——繪製運動麯綫 310
15.4.1 實現布局文件 310
15.4.2 實現Activity程序文件 312
15.4.3 實現監聽事件處理 316
15.5 實戰演練——開發一個健身
計步器 319
15.5.1 係統功能模塊介紹 319
15.5.2 係統主界麵 319
15.5.3 係統設置模塊 329
第16章 氣壓傳感器詳解 347
16.1 氣壓傳感器基礎 347
16.1.1 什麼是氣壓傳感器 347
16.1.2 氣壓傳感器在智能手機
中的應用 347
16.2 實戰演練——開發一個Android
氣壓計係統 348
16.2.1 編寫插件調用文件 348
16.2.2 編寫Cordova插件文件 349
16.2.3 定義每個時間點的壓力值 351
16.2.4 監聽傳感器傳來的和存儲
的新壓力值 351
16.3 實戰演練——獲取當前相對海拔
和絕對海拔的數據 355
16.3.1 實現布局文件 355
16.3.2 實現主Activity 357
第17章 溫度傳感器詳解 364
17.1 溫度傳感器基礎 364
17.2 Android係統中的溫度傳感器 364
17.3 實戰演練——讓Android設備
變為溫度計 366
17.3.1 實現布局文件 367
17.3.2 檢測溫度傳感器的
溫度變化 367
17.4 實戰演練——電池溫度測試儀 368
17.4.1 實現布局文件 368
17.4.2 實現程序文件 369
17.5 實戰演練——測試溫度、濕度、
光照和壓力 377
17.5.1 實現Arduino文件 377
17.5.2 實現Android APP 385
第18章 濕度傳感器詳解 388
18.1 濕度傳感器基礎 388
18.2 Android係統中的濕度傳感器 389
18.3 實戰演練——獲取遠程濕度
傳感器的數據 389
18.3.1 編寫布局文件 390
18.3.2 監聽用戶觸摸單擊屏幕
控件事件並處理 391
18.3.3 設置遠程濕度傳感器的
初始URL地址 393
18.4 實戰演練——開發一個濕度
測試儀 394
18.4.1 實現主界麵 394
18.4.2 設置具體值 397
18.4.3 顯示當前的值 401
18.4.4 保存當前數值 404
18.4.5 圖形化顯示測試結果 405
18.4.6 濕度跟蹤器 414
第19章 Android藍牙係統概述 416
19.1 藍牙概述 416
19.1.1 藍牙技術的發展曆程 416
19.1.2 藍牙的特點 416
19.2 Android係統中的藍牙模塊 416
19.3 分析藍牙模塊的源碼 418
19.3.1 初始化藍牙芯片 418
19.3.2 藍牙服務 418
19.3.3 管理藍牙電源 419
19.4 和藍牙相關的類 419
19.4.1 BluetoothSocket類 419
19.4.2 BluetoothServerSocket類 421
19.4.3 BluetoothAdapter類 421
19.4.4 BluetoothClass.Service類 428
19.4.5 BluetoothClass.Device類 428
19.5 在Android平颱開發藍牙
應用程序 429
19.6 實戰演練——開發一個控製玩具
車的藍牙遙控器 432
19.7 實戰演練——開發一個藍牙
控製器 438
19.7.1 界麵布局 439
19.7.2 響應單擊按鈕 440
19.7.3 和指定的服務器建立連接 441
19.7.4 搜索附近的藍牙設備 442
19.7.5 建立和OBEX服務器的
數據傳輸 443
19.7.6 實現藍牙服務器端的
數據處理 446
第20章 低功耗藍牙技術詳解 448
20.1 短距離無綫通信技術概覽 448
20.1.1 ZigBee——低功耗、
自組網 448
20.1.2 Wi-Fi——大帶寬支持
傢庭互聯 449
20.1.3 藍牙——4.0進入
低功耗時代 449
20.1.4 NFC——近場通信 449
20.2 藍牙4.0 BLE基礎 450
20.2.1 藍牙4.0的優勢 450
20.2.2 Bluetooth 4.0 BLE推動瞭
智能設備的興起 451
20.3 低功耗藍牙基礎 452
20.3.1 低功耗藍牙的架構 452
20.3.2 低功耗藍牙分類 452
20.3.3 集成方式 453
20.3.4 低功耗藍牙的特點 454
20.3.5 BLE和傳統藍牙BR/EDR
技術的對比 454
20.4 藍牙規範 455
20.4.1 Bluetooth係統中的
常用規範 455
20.4.2 藍牙協議體係結構 456
20.4.3 低功耗(BLE)藍牙協議 457
20.4.4 現有的基於GATT的
協議/服務 457
20.4.5 雙模協議棧 458
20.4.6 單模協議棧 458
20.5 低功耗藍牙協議棧詳解 459
20.5.1 藍牙協議棧基礎 459
20.5.2 藍牙協議體係中的協議 460
20.5.3 Android的低功耗藍牙
協議棧 461
20.6 TI公司的低功耗藍牙 462
20.6.1 獲取TI公司的低功耗
藍牙協議棧 462
20.6.2 分析TI公司的低功耗
藍牙協議棧 463
20.7 使用藍牙控製電風扇 469
20.7.1 準備DHT傳感器 469
20.7.2 實現Android測試APP 473
第21章 語音識彆技術詳解 479
21.1 語音識彆技術基礎 479
21.1.1 語音識彆的發展曆史 479
21.1.2 技術發展曆程 480
21.2 Text-To-Speech技術詳解 480
21.2.1 Text-To-Speech基礎 480
21.2.2 Text-To-Speech的
實現流程 481
21.2.3 實戰演練——使用Text-To-Speech技術實現
語音識彆 483
21.3 Voice Recognition技術詳解 484
21.3.1 Voice Recognition技術
基礎 484
21.3.2 實戰演練——使用
Voice Recognition技術
實現語音識彆 486
21.4 實戰演練——開發一個語音
識彆係統 489
21.4.1 驗證是否支持所需要
的語言 489
21.4.2 實現TTS的初始化工作 489
21.4.3 開啓語言檢查功能 491
21.4.4 跟蹤語言數據的安裝狀況 492
21.4.5 轉換語言並處理結果 493
21.4.6 實現語音閱讀測試 495
21.4.7 保證係統可以實現正確
的語音識彆 499
21.4.8 顯
Android傳感器開發與智能設備案例實戰 下載 mobi epub pdf txt 電子書 格式