谷歌眼镜开发入门经典移动开发经典丛书 pdf下载pdf下载

谷歌眼镜开发入门经典移动开发经典丛书百度网盘pdf下载

作者:
简介:本篇提供书籍《谷歌眼镜开发入门经典移动开发经典丛书》百度网盘pdf下载
出版社:清华大学出版社京东自营官方旗舰店
出版时间:2015-06
pdf下载价格:0.00¥

免费下载


书籍下载


内容介绍

内容简介

  

Google Glass将是目前以及未来几年风靡全球的革命性的移动计算平台,《谷歌眼镜开发入门经典》是学习如何为Google Glass开发应用的首要选择。移动开发者们一直在思考未来,现在就从Google Glass开始吧!

《谷歌眼镜开发入门经典 移动开发经典丛书》包含许多令人激动的项目,极富实践性。通过每一个使用GDK(Glass Development Kit)的Glass开发主题,你将学习谷歌眼镜的基础知识以及如何配置开发环境:

● Glass用户界面

● 摄像头和图像处理

● 视频:基础与应用

● 语音和音频

● 网络、蓝牙和社交

● 位置、地图和传感器

● 图形、动画和游戏

你还将学习如何使用Mirror API开发基于Web的Glassware并用它来启动GDK应用。每个主题都包含丰富的示例,以说明Glass真正能做些什么,并帮助你快速开始自己的应用开发。

《谷歌眼镜开发入门经典 移动开发经典丛书》作者Jeff Tang成功开发过基于各种平台的移动应用、Web应用和企业级应用,并且在用户体验上有较高造诣。他通过炫酷而实用的示例,将丰富的知识带到了本书中,并同时激发和引导出你的创造力。

《谷歌眼镜开发入门经典 移动开发经典丛书》针对所有希望开始为Glass开发GDK和Mirror API应用的开发者。无论是Android、iOS开发人员,还是Web应用或企业级应用开发人员,你都不会想错过Glass带来的机遇。

那么现在就从《谷歌眼镜开发入门经典》入手,从中获得灵感吧!

作者简介

Jeff Tang已成功在多个平台上开发过移动、Web和企业级应用,他在20世纪就已获得Microsoft Certified Developer(微软认证开发工程师)和Sun Certified Java Developer (Sun认证Java开发工程师),并在App Store中发布了多款畅销的iOS应用,是Google认可的Top Android Market Developer (顶级Android Market开发者)。Jeff拥有计算机科学人工智能方向的硕士学位,并且崇尚终生学习。他热爱篮球运动(他有一次投中11个三分球并连续28次罚球命中),喜欢阅读Ernest Hemingway (欧内斯特?海明威)和Mario Puzo (马里奥?普佐)的作品,并且梦想着环游世界。

目录

第1章 入门指南 1

1.1 为什么选择Glass? 1

1.2 什么是Glass和Glassware? 2

1.3 Glass可以做什么 4

1.4 可以开发什么样的Glassware? 5

1.4.1 基于Mirror API的Glassware 5

1.4.2 GDK Glassware 7

1.4.3 什么时候用哪一个 7

1.5 Google的Glassware政策 8

1.6 为什么选用本书? 8

1.7 本书读者对象 9

1.7.1 对于初级Android开发者 9

1.7.2 对于中级和高级Android开发者 9

1.7.3 对于iOS开发者 10

1.7.4 对于Web开发者 10

1.7.5 对于其他程序员 10

1.7.6 对于非程序员 10

1.8 资源 10

1.9 问题和反馈 11

1.10 本章小结 11

第2章 你的第一个 GDK应用 13

2.1 搭建开发环境 13

2.1.1 系统要求 13

2.1.2 Android Developer Tools 13

2.2 使用Glass 17

2.2.1 在Glass上开启调试模式 17

2.2.2 adb命令 17

2.2.3 在Windows上安装和运行USB驱动 18

2.2.4 在更大的屏幕上显示Glass屏幕 20

2.2.5 用模拟设备或模拟器进行开发 21

2.2.6 测试GDK示例 22

2.3 HelloGlass Glassware 24

2.4 进一步探讨细节 29

2.4.1 总体画面 29

2.4.2 源代码 30

2.4.3 资源文件 36

2.4.4 AndroidManifest.xml 38

2.5 本章小结 39

第3章 Glass用户界面 41

3.1 概览 41

3.2 Glass风格的卡片 44

3.3 动态卡片 45

3.3.1 低频动态卡片 45

3.3.2 高频动态卡片 48

3.3.3 菜单 55

3.4 沉浸模式 56

3.4.1 2D画布绘图 56

3.4.2 手势和监听器 61

3.4.3 菜单和头部动作 62

3.4.4 3D OpenGL ES绘图 63

3.5 用户界面的选择 68

3.6 主题和UI Widget 69

3.7 本章小结 71

第4章 摄像头与图像处理 73

4.1 拍照 73

4.1.1 简单方式 74

4.1.2 自定义方法 74

4.2 照片浏览 87

4.3 条形码识别 89

4.4 OCR 92

4.5 图像Web搜索 96

4.6 OpenCV 98

4.7 完整的应用 102

4.8 本章小结 102

第5章 视频:基础和应用 103

5.1 拍摄视频 103

5.1.1 快速方式 104

5.1.2 自定义方式 106

5.2 播放视频 112

5.3 OpenCV视频处理 116

5.4 FFmpeg视频处理 121

5.4.1 在Glass上测试库客户端 121

5.4.2 集成FFmpeg库 122

5.5 YouTube集成 127

5.5.1 调用数据API 127

5.5.2 显示查询结果 128

5.5.3 进行语音查询 132

5.5.4 播放视频并且唱卡拉OK 133

5.5.5 持续更新代码 134

5.5.6 运行应用 135

5.6 本章小结 135

第6章 语音与音频 137

6.1 语音输入 137

6.2 音频录制与播放 144

6.2.1 使用MediaRecorder和

MediaPlayer 144

6.2.2 使用AudioRecord与

AudioTrack 147

6.2.3 改进卡拉OK应用 153

6.3 音调探测 154

6.4 按键音探测 157

6.5 歌曲识别 159

6.6 本章小结 160

第7章 网络、Bluetooth与社交 163

7.1 HTTP请求 164

7.1.1 HTTP GET 165

7.1.2 HTTP POST 166

7.1.3 HTTP文件上传 167

7.2 Socket编程 170

7.2.1 Glass客户端与Android服务器 170

7.2.2 Glass服务器与Android客户端 177

7.2.3 Glass客户端与 iOS服务器 177

7.2.4 Glass服务器与iOS客户端 179

7.3 Bluetooth 181

7.3.1 Classic Bluetooth 182

7.3.2 Bluetooth Low Energy 191

7.3.3 其他建议 197

7.4 社交化 198

7.5 本章小结 201

第8章 位置、地图与传感器 203

8.1 位置 203

8.1.1 获取位置 204

8.1.2 显示地址 207

8.1.3 显示与缩放地图 208

8.1.4 寻找附近的地点 211

8.1.5 搜索分享的图片 218

8.2 传感器 218

8.2.1 支持的传感器 218

8.2.2 收集传感器数据 219

8.2.3 摇一摇 230

8.2.4 检测金属 231

8.2.5 开发指南针 232

8.2.6 寻找行星 234

8.3 本章小结 234

第9章 图形、动画与游戏 235

9.1 图形 235

9.1.1 Canvas绘图 236

9.1.2 绘制形状 238

9.1.3 徒手绘画 239

9.1.4 位图操作 242

9.1.5 OpenGL ES绘图 244

9.2 动画 247

9.2.1 使用XML与编程方式动态化属性 247

9.2.2 使用XML与编程方式组合动画 250

9.2.3 使用动画监听器 251

9.3 Glass上的游戏引擎 254

9.3.1 Cocos2d-x 3.0 254

9.3.2 libgdx 265

9.3.3 AndEngine 271

9.4 开发基于传感器的游戏 276

9.5 本章小结 279

第10章 Mirror API 281

10.1 配置环境 281

10.1.1 使用PHP 282

10.1.2 使用Java 285

10.2 Mirror API 290

10.2.1 概述 291

10.2.2 时间轴与静态卡片 292

10.2.3 联系人 305

10.2.4 订阅 308

10.2.5 位置 308

10.3 图像处理:Mirror API方式 309

10.4 创建并测试Java版本的新Mirror应用 312

10.5 NBA Roster应用 312

10.6 企业级应用 317

10.7 设计原则 317

10.8 本章小结 318

10.9 在继续之前 318

前言/序言

Google Glass是Google开发的可穿戴式计算机。虽然Glass基于Android,但是它从根本上来说不同于已有的移动平台。对Glass最好的描述是,“需要它时能方便使用,不需要它时也不会碍事”。Glass被设计成对智能手表、智能手机、平板电脑和计算机的补充。

2013年4月,Google Glass Explorer Edition首次提供给Google I/O 2013大会上的开发者。在2013年5月举行的Google I/O 2013大会上进行了4个有关Glass的研讨会:

● Glass开发:https://developers.google.com/events/io/sessions/332490621

● 使用Mirror API构建Glass服务:https://developers.google.com/events/io/sessions/ 332733833

● 放弃保修,破解Glass:https://developers.google.com/events/io/sessions/332704837

● 与Glass团队炉边谈话:https://developers.google.com/events/io/sessions/332695704

之后,发生了几个重要的事件:

● 2013年11月19日,Google正式发布了本地的基于Android的Glass Development Kit (GDK) Sneak Peek,所有开发者现在可以为Glass构建基于Android 4.0.4(API Level 15)的本地应用。

● 2014年4月15日,Google宣布基于Android 4.4.2(API Level 19)的Glass重大更新。

● 2014年5月15日,Google面向所有年满18岁的美国居民发售Glass Explorer Edition,并提供美国的售卖地址。

更多有关如何设计和开发Glass应用(也被称为Glassware)以及Glass平台细节的Glass相关研讨会被列入计划(详见https://www.google.com/events/io/schedule)。

现在是开始学习Glass开发的最佳时间;如果还需要更多理由,请看第1章的1.1节“为什么选择Glass?”。如果对Glass开发感兴趣,当然需要看看Google I/O 2013和2014大会上有关Glass的视频。另外,Google Glass的开发者网站(https://developers.google.com/glass/)上有许多关于Glass设计、开发和发布的优秀文档。但是还没有附带针对每个重要Glass开发主题使用GDK和Mirror API的工作代码示例的入门教程。这正是本书所要提供的。

本书主要内容

本书共10章,涵盖所有重要的Glass开发主题。

第1章“入门指南”:在该章中,会讨论几个关于Glass和Glassware的一般性主题,比如为什么选择Glass?什么是Glass和Glassware?你能使用GDK Glassware和Mirror Glassware做些什么?为什么选择本书?本书适合哪些人阅读?此外还会列出流行的Glass开发网站。

第2章“你的第一个 GDK应用”:首先会介绍配置GDK Glassware开发环境的详细步骤,无论是使用Mac、Windows还是使用Linux。然后会讨论如何设置Glass为开发做好准备,以及如何在Glass上运行示例GDK应用。最后会介绍通用模板Glassware,你将用它新建GDK应用,此外还会向你展示构建第一个GDK应用HelloGlass的入门教程,该应用会带有十分不错的功能,比如菜单活动、文本转语音和语音识别。

第3章“Glass用户界面”:在该章中,你将进入Glass的精彩世界,并学习使用GDK可以为Glass应用构建何种UI元素。本章将使用完全测试过的示例代码向你详细介绍主要的Glass UI元素——时间轴、Glass风格卡片、动态卡片、沉浸模式、菜单项和手势,这些示例代码会为你展示如何渲染标准UI内容、来自XML布局的内容和使用Android的Canvas 2D和OpenGL ES 1.0及2.0创建的内容。在该章的最后,对于可以使用GDK构建何种应用,以及何时使用何种UI元素或是它们的组合,你会有一个基本的理解。

第4章“摄像头与图像处理”:在该章中,你首先将学习如何使用Glass摄像头拍照,包括简单方式和自定义方式,其中自定义方式允许在拍照前预览和缩放。然后会简要地介绍如何浏览Glass所有目录中的照片。此后会一步步讨论一些常见而实用的图像处理任务,包括条形码和QR码识别、OCR、图像Web搜索和OpenCV。还会介绍如何在需要时将最好的开源库集成到你自己的应用中,以及如何在应用中调用它们的API。阅读完本章,你将做好准备使用所有种类的图像处理技术,探索自己的优秀应用创意。

第5章“视频:基础和应用”:在该章中,你首先将学习基本视频拍摄和带有预览的自定义视频拍摄,并看看视频在Glass上是如何播放的。然后会讨论如何使用OpenCV在提取自视频的帧上添加图像效果。FFmpeg是一个十分强大的视频处理库,本章会详细介绍如何将它与你自己的应用集成起来,还会介绍各种视频滤镜效果的命令。最后会详细介绍一个YouTube视频搜索播放应用,它可以用作一个成熟的卡拉OK应用的基础。

第6章“语音与音频”:在该章中,会介绍很多语音和音频相关的主题,从标准Glass语音输入,高级和低级方式的音频录制和播放,到各种音频处理示例,包括音符探测、DTMF按键音探测以及歌曲识别。视频和音频是我们与他人或设备交流通信必不可少的部分,所以你可以期待看到像你一样的开发者开发的在此领域富有创新意义的应用。

第7章“网络、Bluetooth与社交”:在该章中,首先会介绍如何使用推荐的HttpURL- Connection类实现基本的HTTP GET、POST和文件上传操作。然后将讨论如何完成低级Socket编程并让Glass分别作为客户端和服务端与其他Android或iOS设备通信以进行数据交换。此后会详细说明如何在无需Wi-Fi的情况下使用Classic Bluetooth在Glass和其他Android设备间进行通信。接着会介绍有关BLE支持的令人兴奋的主题,如何让Glass用作BLE客户端以及如何使用Samsung Galaxy S4智能手机或iOS设备作为Glass和BLE设备间的桥梁。最后会向你展示如何使用Apple推送技术让你在数秒内向WhatsApp或WeChat好友分享Glass上新拍摄的照片。

第8章“位置、地图与传感器”:在该章中,会详细讨论如何获取当前的位置并显示地址和地图,如何缩放地图,以及如何基于位置信息查找附近的商业信息。然后会介绍Glass支持的8种传感器,如何探测头部运动和方向,如何探测Glass振动,如何开发金属探测器,以及如何为应用添加指南针支持。最后会概括构建一个行星探测器Glass应用的步骤。

第9章“图形、动画与游戏”:在该章中,会介绍常用图形和动画API并展示一些运行在Glass上的演示程序,可以将这些演示程序用在你自己的简单Glass应用中。然后会非常详细地讨论如何在Glass上配置并运行三个流行的开源游戏引擎(Cocos2d-x、libgdx和AndEngine)。你将学到如何运行这三个游戏引擎的一些示例并与它们交互,比如如何使用引擎创建新的应用。最后,你将学到如何使用Glass旋转向量传感器来用头部运动控制游戏。阅读完该章内容,你将能在继续令人兴奋的游戏开发旅程前很好地掌握这几个强大的工具。

第10章“Mirror API”:在该章中,将详细讨论如何为Mirror API应用开发配置环境,以及如何部署Glass Mirror API以快速开始PHP项目到自己的服务器和部署Java项目到Google App Engine。然后会通过几个示例详细介绍Mirror API的主要构成部分,包括时间轴和静态卡片、联系人、订阅和位置。此外还会向你展示如何构建一个混合应用,它从Mirror应用启动GDK应用并从Mirror应用传递信息到GDK应用。你也会在Mirror应用中重用第7章的Java图片上传代码来上传照片到服务器以做进一步处理。最后会展示一个完整的Mirror API应用,该应用让你查看并搜索16支NBA季后赛球队的每一名球员。

在开始之前

笔者实际书写上文是在完成本书编写之后。笔者花了6个月的工作日晚上和周末的时间,学习并熟悉GDK和Mirror API,并开发和测试了许多示例,以此来证明Glass真正能做些什么(就如上文概述的那样),还编写了有关如何运行和使用这些示例的入门指南,并且检查和解决了每个已知的问题。

无论你的背景和兴趣是什么,本书覆盖了广泛的Glass开发主题的一些示例,它们会激发和帮助你在开发自己的优秀的Glass应用时快速开始。希望笔者在本书上所花费的数百小时,能为你在令人兴奋的Glass平台上开发节约很多时间。

开始Glass开发世界的奇妙旅行吧!如果在这段旅程中有任何疑问和意见,可以任何时间发邮件,你会在24小时内收到答复。