|
-- 會員 / 註冊 --
|
|
|
|
Android傳感器開發與智能設備案例實戰 ( 簡體 字) |
作者:朱元波 | 類別:1. -> 程式設計 -> 手機程式 -> Android |
譯者: |
出版社:人民郵電出版社 | 3dWoo書號: 44254 詢問書籍請說出此書號!【缺書】 NT售價: 540 元 |
出版日:5/1/2016 |
頁數:741 |
光碟數:0 |
|
站長推薦: |
印刷:黑白印刷 | 語系: ( 簡體 版 ) |
|
加入購物車 │加到我的最愛 (請先登入會員) |
ISBN:9787115414748 |
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 序 |
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證) |
作者序: |
譯者序: |
前言: |
內容簡介: 本書主要介紹Android傳感器和外設的開發,共29章,主要包括Android開發技術基礎、獲取并編譯源碼、Android技術核心框架分析、Android傳感器系統分析、使用地圖定位、光線傳感器詳解、接近警報傳感器詳解、磁場傳感器詳解、加速度傳感器詳解、方向傳感器詳解、陀螺儀傳感器詳解、旋轉向量傳感器詳解、距離傳感器詳解、氣壓傳感器詳解、溫度傳感器詳解、濕度傳感器詳解、Android藍牙系統概述、低功耗藍牙技術詳解、語音識別技術詳解、手勢識別技術詳解、NFC近場通信技術詳解、拍照解析條形碼技術詳解、基于圖像處理的人臉識別技術詳解、行走軌跡記錄器、手勢音樂播放器和智能家居系統等。本書幾乎涵蓋了Android傳感器和外設開發所需的所有主要內容,講解方法通俗易懂。 本書適合Android初學者、Android愛好者以及Android底層開發人員、傳感器開發人員、智能設備開發人員、Android外部設備開發工程師學習,也可以作為相關培訓學校和大專院校相關專業的教學用書。 |
目錄:第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 顯示語音識別的結果 501 21.4.9 處理回調 502 第22章 手勢識別技術詳解 508 22.1 手勢識別技術基礎 508 22.1.1 類GestureDetector基礎 508 22.1.2 使用類GestureDetector 509 22.1.3 手勢識別處理事件和方法 511 22.2 實戰演練——通過觸摸方式 移動圖片 512 22.2.1 實例說明 512 22.2.2 具體實現 512 22.3 實戰演練——實現各種手勢 識別 515 22.4 實戰演練——實現手勢拖動和 縮放圖片效果 517 22.4.1 實現布局文件 518 22.4.2 監聽用戶選擇的設置選項 518 22.4.3 獲取并設置移動位置和 縮放值 519 22.4.4 在不同的縮放狀態下 繪制圖像視圖 520 22.4.5 根據監聽到的手勢實現 圖片縮放 522 第23章 NFC近場通信技術詳解 524 23.1 近場通信技術基礎 524 23.1.1 NFC技術的特點 524 23.1.2 NFC的工作模式 524 23.1.3 NFC和藍牙的對比 525 23.2 射頻識別技術詳解 525 23.2.1 RFID技術簡介 526 23.2.2 RFID技術的組成 526 23.2.3 RFID技術的特點 526 23.2.4 RFID技術的工作原理 527 23.3 Android系統中的NFC 528 23.3.1 分析Java層 528 23.3.2 分析JNI部分 548 23.3.3 分析底層 556 23.4 編寫NFC程序 556 23.4.1 在Android系統編寫 NFC APP的方法 556 23.4.2 實戰演練——使用NFC 發送消息 558 23.4.3 實戰演練——使用NFC 讀寫Mifare Tag 562 第24章 拍照解析條形碼技術詳解 566 24.1 Android拍照系統介紹 566 24.1.1 分析拍照系統的底層程序 568 24.1.2 分析拍照系統的硬件 抽象層 574 24.1.3 分析拍照系統的Java部分 577 24.2 開發拍照應用程序 582 24.2.1 通過Intent調用系統的 照相機Activity 583 24.2.2 調用Camera API拍照 583 24.2.3 總結Camera拍照的流程 584 24.2.4 實戰演練——獲取系統現 有相機拍攝的圖片 586 24.2.5 實戰演練——使用Camera 預覽并拍照 590 24.2.6 實戰演練——使用Camera API方式拍照 594 24.3 使用拍照方式解析二維碼 596 24.3.1 QR Code碼的特點 596 24.3.2 實戰演練——使用Android 相機解析二維碼 597 第25章 麥克風音頻錄制技術詳解 604 25.1 使用MediaRecorder接口 錄制音頻 604 25.1.1 類MediaRecorder詳解 604 25.1.2 實戰演練——使用MediaRecorder錄制音頻 605 25.2 使用AudioRecord接口錄制音頻 609 25.2.1 AudioRecord的常量 609 25.2.2 AudioRecord的構造函數 610 25.2.3 AudioRecord的公共方法 610 25.2.4 AudioRecord的受保護 方法 612 25.2.5 實戰演練——使用 AudioRecord錄制音頻 612 25.3 實戰演練——麥克風錄音 綜合實例 614 25.3.1 獲取錄音源的最大振幅 614 25.3.2 實現異步音頻錄制功能 616 25.3.3 監聽是否超越最大值 618 25.3.4 錄制音頻 618 25.3.5 巨響檢測 621 25.3.6 檢測一致性頻率 622 第26章 基于圖像處理的人臉識別 技術詳解 624 26.1 二維圖形處理詳解 624 26.1.1 類Graphics基礎 624 26.1.2 實戰演練——使用 Graphics類 624 26.1.3 實戰演練——使用Color類 和Paint類實現繪圖處理 626 26.2 二維動畫處理詳解 628 26.2.1 類Drawable詳解 628 26.2.2 實現Tween Animation 動畫 629 26.2.3 實戰演練——實現Tween 動畫效果 630 26.2.4 實戰演練——使用Tween Animation實現Tween 動畫效果 631 26.2.5 實現Frame Animation 動畫效果 632 26.2.6 實戰演練——播放 GIF動畫 633 26.3 Android人臉識別技術詳解 634 26.3.1 分析人臉識別模塊的源碼 634 26.3.2 實戰演練——使用內置 模塊實現人臉識別 635 26.3.3 實戰演練——實現 人臉識別 636 26.3.4 實戰演練——從照片中 取出人臉 640 第27章 行走軌跡記錄器 642 27.1 系統功能模塊介紹 642 27.2 系統主界面 642 27.2.1 布局文件 642 27.2.2 實現主Activity 645 27.3 系統設置 658 27.3.1 選項設置 659 27.3.2 生成GPX文件和 KML文件 661 27.4 郵件分享提醒 665 27.4.1 基本郵箱設置 665 27.4.2 實現郵件發送功能 668 27.5 上傳OSM地圖 671 27.5.1 授權提示布局文件 671 27.5.2 實現文件上傳 673 第28章 手勢音樂播放器 675 28.1 系統功能模塊介紹 675 28.2 系統主界面 675 28.3 系統列表界面 678
28.3.1 布局文件 678 28.3.2 程序文件 680 28.4 實現公共類 691 28.4.1 核心公共類Jamendo Application 691 28.4.2 緩存圖片資源 694 28.4.3 類RequestCache 694 28.5 手勢操作 695 28.5.1 Android提供的手勢 操作API 695 28.5.2 使用命令模式構建手勢 識別系統 698 28.5.3 實現抽象命令角色 Command 698 28.5.4 實現具體命令角色ConcreteCommand 698 28.5.5 實現命令接收者角色 Receiver 699 28.5.6 實現調用者角色Invoker 700 28.5.7 實現裝配者角色Client 701 28.6 播放處理 701 28.6.1 設計播放界面 702 28.6.2 分析播放流程 702 第29章 智能家居系統 710 29.1 需求分析 710 29.1.1 背景介紹 710 29.1.2 傳感技術的推動 710 29.1.3 Android與智能家居的 緊密聯系 711 29.2 系統功能模塊介紹 711 29.3 系統主界面 711 29.3.1 實現布局文件 711 29.3.2 實現程序文件 712 29.4 系統設置 714 29.4.1 總體配置 714 29.4.2 系統總體配置 714 29.4.3 構建數據庫 719 29.5 電器控制模塊 721 29.5.1 電器控制主界面 721 29.5.2 溫度控制界面 723 29.5.3 電燈控制界面 724 29.6 預案管理模塊 727 29.6.1 天氣情況 727 29.6.2 歷史數據 735 29.6.3 系統設置 737
|
序: |
|