欢迎来到中国铁道出版社有限公司官网!
$itImage.title$

Android智能穿戴设备开发实战详解(含盘)

书      号:9787113210045

丛  书 名:

作      者:张明星

译      者:

开      本:16开

装      帧:平装

正文语种:

出  版 社:中国铁道出版社有限公司

定      价:69.8

  • 内容简介

    本书通过大量的实例,循序渐进地讲解了在Android系统中开发穿戴设备的必备技术和各种开发实战经验与技巧。具体内容包括Android穿戴设备开发技术基础,搭建Android开发环境,开发前的准备工作,让硬件和网络相连,地图定位应用解决方案,利用光线和接近警报提高用户体验,检测设备的运动方向,检测穿戴设备的运动轨迹,检测穿戴设备所处的环境参数,深入挖掘蓝牙技术,深入探索Android蓝牙系统,可穿戴设备而生的蓝牙4.0BLE,BLE4.0开发秘籍,语音识别应用解决方案,用手势识别提高用户体验,多媒体应用解决方案,户外暴走轨迹记录仪,湿度测试仪。
  • 前言

    前言

    Android是一款在2007年11月5日宣布的基于Linux平台的开源手机操作系统的名称,该平台由操作系统、中间件、用户界面和应用软件组成,号称是首个为移动终端打造的真正开放和完整的移动软件。根据国际数据公司(IDC)公布的统计数据,2015年2月消息,市场研究机构 IDC 公布了2014年全年度的智能手机平台调查报告,其中显示 iOS 的市场份额从去年同一时间的 15.1% 下滑至 14.8%,Android 则是从 78.7% 上升至 81.5%。81.5%,这是一个具有突出性优势的比重,足以令后面的追赶者汗颜。我们有理由相信,起码在未来一段时间内,Android依旧牢牢地占据着智能手机操作系统第一的宝座。
      本书的内容
      本书共18章,循序渐进地讲解了在Android系统中开发穿戴设备的基本知识。本书依次讲解了Android穿戴设备开发技术基础,搭建Android开发环境,开发前的准备工作,让硬件和网络相连,地图定位应用解决方案,利用光线和接近警报提高用户体验,检测设备的运动方向,检测穿戴设备的运动轨迹,检测穿戴设备所处的环境参数,深入挖掘蓝牙技术,深入探索Android蓝牙系统,为可穿戴设备而生的蓝牙4.0 BLE,BLE 4.0 开发秘籍,语音识别应用解决方案,用手势识别提高用户体验,多媒体应用解决方案,户外暴走轨迹记录仪,湿度测试仪。本书几乎涵盖了Android穿戴设备应用开发方面的所有内容,并且内容言简意赅,讲解方法通俗易懂、详细,不但适合应用高手们学习,也特别有利于初学者学习并消化。
      本书的版本
      Android系统自2008年9月发布第一个版本1.1以来,截至2015年6月发布最新版本5.1,一共有十多个版本。由此可见,Android系统升级频率较快,一年之中最少有两个新版本诞生。如果过于追求新版本,会造成力不从心的后果。所以在此建议广大读者:“不必追求最新的版本,我们只需关注最流行的版本即可”。据官方统计,截至2015年7月15日,占据前三位的版本分别是Android 5.0,Android 4.4和Android 4.3,其实这三个版本的区别并不是很大,只是在某个领域的细节上进行了更新。因此,在本书中就是以Android 5.0为主,个别案例会用到Android 4.4和Android 4.3来详细讲解Android系统安全方面的基本知识。
      本书特色
      本书内容十分丰富,分析细致、全面。我们的目标是通过一本图书能为读者提供多本图书的价值,读者可以根据自己的需要有选择地阅读。在内容的编写上,本书具有以下特色:
      (1)结构合理
      从用户的实际需求出发,科学安排知识结构,内容由浅入深,叙述清楚。
      (2)遵循“理论介绍—演示实例—综合演练”这一主线
      为了使广大读者彻底弄清楚Android穿戴设备应用开发的每一个知识点,在讲解时依次剖析了基本理论、演示实例分析、综合实战演练等内容。遵循了从理论到实践,实现实践教学这一目标。
      (3)易学易懂
      本书内容条理清晰、语言简洁,可以帮助读者快速掌握每个知识点。使读者既可以按照本书编排的章节顺序进行学习,也可以根据自己的需求对某一章节进行针对性的学习。并且和传统古板的计算机书籍相比,阅读本书会带来更大的乐趣。
      (4)实用性强
      本书彻底摒弃枯燥的理论和简单的操作,注重实用性和可操作性,详细讲解了Android穿戴设备应用开发各个知识点的知识、经验和技巧。
      (5)内容全面
      本书可以号称市面中“内容最全面的一本Android穿戴设备应用开发书”,无论是开发环境搭建,还是传感器开发、数据传输、蓝牙技术等,在本书中您都能找到想要的答案。
      读者对象
      本书几乎涵盖了Android穿戴设备应用开发方面的所有主要内容,并且全书内容言简意赅,讲解细致、通俗易懂,适合下列人员阅读学习:
      ( 初学Android编程的自学者。
      ( Android应用开发人员。
      ( Android源码爱好者。
      ( Android智能穿戴设备开发人员。
      ( 毕业设计的学生。
      ( Android编程爱好者。
      ( 相关培训机构的老师和学员。
      ( 从事Android开发的程序员。
      本书在编写过程中,得到了家人和朋友的大力支持和帮助,在此对他们表示衷心的感谢!由于笔者知识有限,书中如有纰漏和不足之处,诚请读者批评指正,以便修订时使之更臻完善。
      
      
      编 者
      2015年11月
      
      
      
  • 目录

    目录 
    Chapter 1 Android穿戴设备开发技术基础 1
      1.1 智能手机系统介绍 1
    1.1.1 何谓智能手机 1
    1.1.2 看当前主流的智能手机系统 2
    1.1.3 不只是手机 4
    1.1.4 超高的市场占有率 6
      1.2 Android的巨大优势 6
    1.2.1 系出名门 7
    1.2.2 强大的开发团队 7
    1.2.3 诱人的奖励机制 7
    1.2.4 开源 8
      1.3 穿戴设备凶猛来袭 8
    1.3.1 发展历程 8
    1.3.2 现状介绍 9
    1.3.3 发展前景分析 12
    1.3.4 Android对穿戴设备的支持——Android Wear 13
      1.4 Android穿戴设备开发所需要的技术 14

    Chapter 2 搭建Android开发环境 15
      2.1 安装Android SDK的系统要求 15
      2.2 安装JDK 16
      2.3 安装Eclipse和Android SDK 20
    2.3.1 获取并安装Eclipse和Android SDK 20
    2.3.2 快速安装SDK 23
      2.4 安装ADT 24
      2.5 验证设置 26
    2.5.1 设定Android SDK Home 26
    2.5.2 验证开发环境 27
    2.5.3 创建Android虚拟设备(AVD) 28
      2.6 启动AVD模拟器 29
    2.6.1 模拟器和真机究竟有何区别 30
    2.6.2 启动AVD模拟器的基本流程 30

    Chapter 3 开发前的准备工作 31
      3.1 在Linux系统获取Android源码 31
      3.2 在Windows平台获取Android源码 32
      3.3 分析Android源码结构 37
    3.3.1 应用程序 38
    3.3.2 应用程序框架 39
    3.3.3 系统服务 40
    3.3.4 系统程序库 42
    3.3.5 系统运行库 46
    3.3.6 硬件抽象层 46
      3.4 编译源码 47
    3.4.1 搭建编译环境 48
    3.4.2 开始编译 49
    3.4.3 在模拟器中运行 50
    3.4.4 常见的错误分析 51
    3.4.5 实践演练——演示两种编译Android程序的方法 52
      3.5 编译Android Kernel 56
    3.5.1 获取Goldfish内核代码 56
    3.5.2 获取MSM内核代码 59
    3.5.3 获取OMAP内核代码 59
    3.5.4 编译Android的Linux内核 59

    Chapter 4 让硬件和网络相连 61
      4.1 实现网络通信的解决方案 61
    4.1.1 剖析HTTP的作用 61
    4.1.2 Apache接口和标准Java接口的区别 62
    4.1.3 Android独有的网络接口 63
    4.1.4 在屏幕中传递HTTP参数的实现技巧 64
    4.1.5 如何在运动过程中访问地图 67
      4.2 实现数据通信的解决方案 69
    4.2.1 使用ServletSocket传递数据 70
    4.2.2 使用Socket传递数据 70
    4.2.3 实现非阻塞Socket通信 70
    4.2.4 使用DatagramSocket实现数据交互 72
    4.2.5 发送求救信号的实现技巧 73
      4.3 远程数据下载解决方案 74
    4.3.1 获取图片数据的方法总结 74
    4.3.2 JSON数据传输的常见用法 76
    4.3.3 用多线程提升处理效率 81
      4.4 如何高效的上传数据 86
    4.4.1 将穿戴设备中的文件上传到远程服务器 86
    4.4.2 使用GET方式上传数据 88
      4.5 URL数据的处理方法 92
    4.5.1 URL和URLConnection 92
    4.5.2 让穿戴设备和社交软件相结合 93
    4.5.3 充分利用网络资源 94
    4.5.4 将穿戴设备打造成一个网页浏览器 97

    Chapter 5 地图定位应用解决方案 100
      5.1 位置服务解决方案 100
    5.1.1 android.location功能类 100
    5.1.2 实现Android定位 101
      5.2 随时更新设备的位置信息 104
    5.2.1 Maps库类的技巧 104
    5.2.2 LocationManager可以及时监听你 105
      5.3 在Android穿戴设备中使用地图 106
    5.3.1 使用地图前的准备工作 106
    5.3.2 使用Map API密钥的流程 109
      5.4 在穿戴设备中实现GPS定位 111
      5.5 使用谷歌地图实现定位的技巧 114
      5.6 在Android穿戴设备中实现地址查询的解决方案 119
      5.7 打造一个路径导航设备 124

    Chapter 6 利用光线和接近警报提高用户体验 132
      6.1 挖掘Android中的传感器系统 132
      6.2 检测当前设备所支持的传感器的方法 134
      6.3 模拟器测试传感器APP的解决方案 136
      6.4 移植一个光线系统 140
    6.4.1 高效获取设备中的光线值的经验之谈 140
    6.4.2 显示设备光线强度的方法 141
    6.4.3 获取设备中光线传感器的值 142
    6.4.4 显示设备中光线传感器的强度 144
    6.4.5 显示设备名称和光线强度 146
      6.5 使用接近警报的解决方案 148
    6.5.1 Geocoder类详解 149
    6.5.2 Geocoder的主要功能 151
    6.5.3 地理编码和地理反编码 152
    6.5.4 在穿戴设备地图中快速查询某个位置 156

    Chapter 7 检测设备的运动方向 159
      7.1 在设备中加入磁场传感器 159
    7.1.1 磁场传感器基础 159
    7.1.2 Android系统中的磁场传感器 159
    7.1.3 获取磁场传感器分量的技巧 160
      7.2 使用加速度传感器 161
    7.2.1 加速度传感器基础 161
    7.2.2 Android系统中的加速度传感器 162
    7.2.3 高效获取加速度值的方法 163
    7.2.4 实现抖动效果的技巧 165
    7.2.5 高级实践——实现仿微信“摇一摇”效果 166
      7.3 线性加速度传感器 171
    7.3.1 线性加速度传感器的原理 171
    7.3.2 测试设备运动的技巧 172
      7.4 使用方向传感器的技巧 175
    7.4.1 方向传感器基础 176
    7.4.2 Android中的方向传感器 176
    7.4.3 测试方向值的最佳方案 176
    7.4.4 如何快速开发一个指南针程序 178
    7.4.5 快速确定当前设备方向的技巧 180
    7.4.6 快速实现一个定位指南针的方法 184

    Chapter 8 检测穿戴设备的运动轨迹 195
      8.1 测试运动距离 195
    8.1.1 加入距离传感器 195
    8.1.2 Android系统中的距离传感器 195
    8.1.3 实现自动锁屏功能的方法 197
    8.1.4 根据设备距离实现自动锁屏的技巧 202
      8.2 绘制运动曲线 204
      8.3 在穿戴设备中开发一个计步器 208
    8.3.1 系统功能模块介绍 209
    8.3.2 系统主界面 209
    8.3.3 系统设置模块 216
      
    Chapter 9 检测穿戴设备所处的环境参数 227
      9.1 使用气压传感器 227
    9.1.1 气压传感器的使用秘籍 227
    9.1.2 气压传感器在智能手机中的应用 228
    9.1.3 开发一个Android气压计系统 228
      9.2 使用温度传感器 236
    9.2.1 温度传感器的使用技巧 236
    9.2.2 Android系统中的温度传感器 237
    9.2.3 让穿戴设备变为温度计的经验之谈 239
      9.3 使用湿度传感器 241
    9.3.1 湿度传感器的使用秘籍 241
    9.3.2 Android系统中的湿度传感器 242
    9.3.3 获取远程湿度数据的技巧 242
      9.4 获取相对海拔和绝对海拔数据的方法 248

    Chapter 10 深入挖掘蓝牙技术 259
      10.1 蓝牙的作用 259
    10.1.1 蓝牙技术的发展历程 259
    10.1.2 蓝牙的特点 259
      10.2 使用低功耗蓝牙技术的意义 260
    10.2.1 低功耗蓝牙的架构 260
    10.2.2 低功耗蓝牙分类 261
      10.3 蓝牙规范 262
    10.3.1 蓝牙系统中的常用规范 262
    10.3.2 蓝牙协议体系结构 263
    10.3.3 低功耗(BLE)蓝牙协议 264
    10.3.4 现有的基于GATT的协议/服务 264
    10.3.5 双模协议栈 266
    10.3.6 单模协议栈 266
      10.4 蓝牙协议栈详解 267
    10.4.1 蓝牙协议栈基础 267
    10.4.2 蓝牙协议体系中的协议 268
      10.5 TI公司的低功耗蓝牙 270
    10.5.1 获取TI公司的低功耗蓝牙协议栈 270
    10.5.2 分析TI公司的低功耗蓝牙协议栈 274
      10.6 使用蓝牙控制电风扇 280
      
    Chapter 11 深入探索Android蓝牙系统 290
      11.1 Android系统中的蓝牙模块 290
      11.2 深入分析蓝牙模块的源码 292
    11.2.1 初始化蓝牙芯片 292
    11.2.2 蓝牙服务 293
    11.2.3 管理蓝牙电源 293
      11.3 和蓝牙息息相关的类 293
    11.3.1 BluetoothSocket类 294
    11.3.2 BluetoothServerSocket类 295
    11.3.3 BluetoothAdapter类 296
    11.3.4 BluetoothClass.Service类 302
    11.3.5 BluetoothClass.Device类 302
      11.4 快速开发Android蓝牙应用程序 303
    11.4.1 开发Android蓝牙应用程序的基本步骤 303
    11.4.2 开发一个控制玩具车的蓝牙遥控器 308
      11.5 在穿戴设备中开发一个蓝牙控制器 313
    11.5.1 界面布局 313
    11.5.2 响应单击按钮 314
    11.5.3 和指定的服务器建立连接 315
    11.5.4 搜索附近的蓝牙设备 316
    11.5.5 建立和OBEX服务器的数据传输 319
    11.5.6 实现蓝牙服务器端的数据处理 322

    Chapter 12 为可穿戴设备而生的蓝牙4.0 BLE 325
      12.1 短距离无线通信技术概览 325
    12.1.1 ZigBee——低功耗、自组网 325
    12.1.2 Wi-Fi——大带宽支持家庭互联 326
    12.1.3 蓝牙——4.0进入低功耗时代 326
      12.2 蓝牙4.0 BLE基础 327
    12.2.1 蓝牙4.0的最杰出表现是低功耗 327
    12.2.2 蓝牙4.0的优势 327
    12.2.3 蓝牙4.0 BLE推动了可穿戴设备的兴起 328
      12.3 低功耗蓝牙协议栈详解 329
    12.3.1 低功耗蓝牙协议栈基础 329
    12.3.2 低功耗蓝牙API详解 330

    Chapter 13 BLE 4.0开发秘籍 346
      13.1 深入理解BlueDroid架构 346
    13.1.1 Android系统中BlueDroid的架构 346
    13.1.2 Application Framework层分析 346
    13.1.3 分析Bluetooth System Service层 349
    13.1.4 分析JNI层 350
    13.1.5 分析HAL层 350
      13.2 Android蓝牙模块的运作流程 351
    13.2.1 打开蓝牙设备 351
    13.2.2 搜索蓝牙 356
    13.2.3 传输OPP文件 363
      13.3 开发一个Android蓝牙通信系统 368
    13.3.1 布局文件 369
    13.3.2 实现控制服务类和线程实现类 369
    13.3.3 编写测试程序文件 378

    Chapter 14 语音识别应用解决方案 384
      14.1 语音识别技术的发展进程 384
    14.1.1 语音识别的发展历史 384
    14.1.2 技术发展历程 385
      14.2 使用Text-To-Speech技术 385
    14.2.1 Text-To-Speech基础 385
    14.2.2 Text-To-Speech的实现流程 386
    14.2.3 在Android中使用Text-To-Speech实现语音识别 389
      14.3 谷歌的Voice Recognition技术 391
    14.3.1 Voice Recognition技术基础 391
    14.3.2 在Android中使用Voice Recognition实现语音识别 394
      14.4 开发一个语音识别系统 397

    Chapter 15 用手势识别提高用户体验 407
      15.1 手势识别技术基础 407
    15.1.1 GestureDetector类基础 407
    15.1.2 使用GestureDetector类 408
    15.1.3 手势识别处理事件和方法 411
      15.2 通过单击的方式移动图片 412
    15.2.1 实例说明 412
    15.2.2 具体实现 412
      15.3 实现各种手势识别 415
      15.4 实现手势翻页效果 418
      15.5 实现手势拖动和缩放图片效果 423

    Chapter 16 多媒体应用解决方案 431
      16.1 深入底层分析Android多媒体系统 431
    16.1.1 OpenMax框架 433
    16.1.2 OpenCore框架 434
    16.1.3 Stagefright框架 435
      16.2 Graphics类的平面世界 436
    16.2.1 Graphics类基础 436
    16.2.2 使用Graphics类 436
      16.3 二维动画 438
    16.3.1 Drawable类 438
    16.3.2 实现Tween Animation动画 439
    16.3.3 实现Frame Animation动画效果 442
      16.4 OpenGL ES 443
    16.4.1 OpenGL ES基础 443
    16.4.2 Android用到OpenGL ES 443
    16.4.3 OpenGL ES的基本操作 444
    16.4.4 绘制图形 451
      16.5 音频开发 455
    16.5.1 音频接口类 455
    16.5.2 AudioManager控制铃声 456
      16.6 录音 463
    16.6.1 使用MediaRecorder接口录制音频 464
    16.6.2 使用AudioRecord接口录音 464
      16.7 在穿戴设备中播放音乐 469
    16.7.1 使用AudioTrack播放音频 469
    16.7.2 使用MediaPlayer播放音频 470
    16.7.3 使用SoundPool 470
    16.7.4 使用Ringtone播放铃声 471
      16.8 为穿戴设备实现震动功能 472
      16.9 闹钟 473

    Chapter 17 户外暴走轨迹记录仪 475
      17.1 系统功能模块介绍 475
      17.2 实现系统主界面 476
      17.3 系统设置 484
    17.3.1 选项设置 485
    17.3.2 生成GPX文件和KML文件 486
      17.4 邮件分享提醒 490
    17.4.1 基本邮箱设置 491
    17.4.2 实现邮件发送功能 491
      17.5 上传OSM地图 491
    17.5.1 授权提示布局文件 492
    17.5.2 实现文件上传 494

    Chapter 18 湿度测试仪 497
      18.1 实现主界面 497
      18.2 设置具体值 499
      18.3 显示当前的值 502
      18.4 保存当前数值 504
      18.5 图形化显示测试结果 505
      18.6 湿度跟踪器 509
  • 作者介绍

    张明星,硕士,精通Android、iOS移动应用开发和底层嵌入式开发,精通C、C和Java语言。现就职于山东物联网研究室,专门研究和物联网有关的蓝牙和红外通信技术。
  • 编辑推荐

    凝聚作者多年开发实战经验,深入解析穿戴设备开发技术

    手把手传授Android穿戴设备开发经验,大幅提高学习和工作效率

    超值赠送《Android应用开发基础与实例》电子书,彻底解决零基础学习者的后顾之忧

  • 书评书荐

  • 附件下载

图书推荐