精通Android Wear应用开发(txt+pdf+epub+mobi电子书下载)


发布时间:2020-07-08 18:00:01

点击下载

作者:(美)西迪基·哈米德(Siddique Hameed),(美)贾伟德·奇达(Javeed Chida)

出版社:机械工业出版社

格式: AZW3, DOCX, EPUB, MOBI, PDF, TXT

精通Android Wear应用开发

精通Android Wear应用开发试读:

前言

、第1~8章和第10章,胡训强翻译了第9章、第11章、第12章。囿于译者的技术和语言水平,书中难免会出现不准确甚至错误之处,如果你发现了这样的地方,请通过邮箱10185014@qq.com告知我们以便改进,在此向你表示感谢!

最后,感谢所有为本书顺利付梓而付出艰辛劳动的人!张磊 胡训强2017年5月于烟台前言

本书面向的读者是在移动、桌面或Web平台上为可穿戴设备开发应用程序(即所谓可穿戴应用程序)的开发人员。此外,还有一种可能就是你的应用程序已经在Google Play应用商店中占有一席之地,目前正想为你已完成的Android应用程序添加Android Wear。

本书的主要目的是让你对构建设计良好、运行可靠的Android Wear应用程序过程中所涉及的思想体系、思维过程、开发细节以及方法论有深入的理解。本书将介绍可穿戴计算范式的优缺点,希望通过这种做法为你构建满足现实世界用例需求的可穿戴设备应用程序奠定坚实的基础。

我们将按照从基础到中级再到高级的顺序循序渐进地研究众多具有不同复杂程度的概念和特性。每章自带示例代码的目的是让你通过实践掌握构建Android Wear应用程序必需的工具、库、SDK和其他相关技术的知识。

通读本书各章后,你有望达成以下目标:

·理解可穿戴计算技术;

·针对使用Android Studio构建Android Wear应用程序设置开发环境;

·逐步熟练掌握Android Wear SDK和API;

·理解Android Wear应用程序开发相关的常用UI模式和用户体验(UX)原则;

·使用可穿戴设备的形状因子(圆形或方形);

·利用Android可穿戴设备上的传感器;

·开发Android Wear示例程序来巩固所学概念;

·在Android移动(手持设备)应用程序和Android Wear应用程序之间进行通信;

·学会如何把Android Wear应用程序发布到Google Play应用商店。本书主要内容

第1章从总体上介绍可穿戴计算的基础知识以及该技术的演化过程。该章还讨论移动计算、普适计算和云计算。

第2章将关注点放在开发环境的设置上,内容囊括从IDE的安装到针对Android Wear开发必需的SDK和库的讨论。

第3章指导读者从零开始使用Android Studio一步步地开发一个名为Today的Android Wear应用程序。

第4章使用Android Wear SDK中的UI组件对Today应用程序进行拓展,并利用自定义布局创建自定义UI组件。

第5章介绍伙伴手持设备应用程序必需的一些概念,包括将手持设备和Android Wear模拟器进行配对的步骤,由此扩展可穿戴设备应用程序的开发环境。Today应用程序进一步展示了这些概念。

第6章讨论Android Wear中的通知,并用一个On This Day活动(Activity)一来拓展Today应用程序,以此演示Android Wear通知API的使用。

第7章讨论Wear API提供的语音功能,我们将定义一个语音动作启动应用程序。该章还介绍一些传感器并讨论如何利用它们跟踪数据。

第8章介绍一些Android Wear UI空间的核心设计原则,并讨论几个常用的Wear UI模式。我们还以一种用户友好的显示版式对On This Day活动进行了增强。

第9章从概念上对原质化设计进行了讨论,并涉及几个对于可穿戴设备应用程序设计和开发而言特有的核心原则。我们通过对之前章节中的Todo应用程序进行扩展来加深理解,这些扩展包括集成导航抽屉以便在待办事项类别之间进行切换、查看待办事项以及针对每种类别执行特定的动作。

第10章介绍表盘的概念。在对辅助开发表盘的Android Wear API进行简短介绍之后,我们开发了一个简单的交互式表盘。

第11章介绍与让应用程序始终在线相关的设计理念和API特性。我们创建了一个活动来演示Wear API提供的始终在线功能。此外,我们还探讨了通过蓝牙连接来调试可穿戴设备应用程序。

第12章讨论可用于测试Android Wear应用程序的工具以及如何进行UI的自动化测试。最后,我们通过一步步的说明来为发布应用程序做好准备。阅读本书要做的准备

为了实践书中的代码以及自行进行应用程序开发,你必须准备好下列工具:

·Android Studio v2(或更高版本);

·JDK v7(或更高版本);

·Git版本控制;

·具有适当硬件配置的开发系统,例如开发应用程序所需的高速CPU和大容量RAM。本书读者对象

本书面向的读者对象是致力于Web、桌面或移动程序开发并希望接触Android Wear平台,渴望掌握开发Android Wear应用程序必需知识的Java开发人员。本书约定

在本书中,你会看到几种用于区分不同类别信息的文本风格,下面是这些风格的示例及其含义的解释。

代码块如下所示:表示警告或重要提示。表示小贴士和小技巧。下载示例代码

本书源代码可以从华章官网www.hzbook.com下载。第1章可穿戴计算概述“你对过去了解越多,就越能为未来做好准备。”——西奥多·罗斯福

本章将讨论可穿戴计算的演化,了解它如何与诸如桌面计算、移动计算和普适计算之类的其他计算范式相匹配。1.1 演化

尽管普遍认为可穿戴计算是最新的技术革新,但实际上在算盘使用的年代里它就已经存在——算盘是几个世纪之前商人们就在使用的一种计算工具。根据中国相关历史文献,相信在清朝时期就出现了镶嵌在戒指上的算盘(http://www.chinaculture.org/classics/2010-04/20/content_383263_4.htm):

相对现代化的可穿戴计算设备是Casio Dadabank,它是卡西欧公司在20世纪80年代制造的一系列电子腕表,这种电子腕表集成了若干特性,例如:计算器、定时器、世界时钟、联系人管理以及对电视机和录像机的远程控制。

在那个年代Casio Databank非常时髦,并且被视为非同平凡的技术成就,与同时代的机械手表或建议电子表相比,它非常方便。Casio Databank不仅可用于查看时间和设置告警,还辅之以一些实用功能,例如快速进行计算或查看之前存储的联系人信息:

创新者和发明家总是热衷于将技术和生活方式尽可能紧密地结合在一起,无论是Burton Amp夹克衫(被视为第一种现代化可穿戴设备,用于控制iPod),还是最新的一种名为Whistle的可穿戴设备(宠物主人用它来跟踪宠物的位置和活动),可穿戴设备正在普及开来。1.2 摩尔定律

Intel公司的联合创始人戈登·摩尔在50年前曾预言:集成电路上可容纳的晶体管的数目,约每隔两年便会增加一倍。这条定律是计算能力井喷式增长的基础,随着时间的流逝,电子元器件的尺寸正在慢慢变得越来越小,而设备的处理能力却变得越来越强。

20世纪六七十年代在企业和大公司运行的大型主机要占据一个起居室大小的空间,随后它们瘦身为中型服务器和台式机。在计算机中使用的集成电路芯片和微处理器变得越来越强劲,存储设备的尺寸变得越来越小,而存储容量却变得越来越大。

台式机正逐渐过渡到笔记本电脑,变得更加便于携带。笔记本电脑装有一块可充电电池,可以让用户根据个人或商务需求随时随地在计算机上进行工作。

个人数字助理(Personal Digital Assistant,PDA)是一种移动可计算设备,用于管理联系人以及执行一些基本的商务任务。

之后智能电话时代来临,当史蒂夫·乔布斯于2007年推出iPhone时,市场上已经有了一些可用的智能电话,但是,苹果公司推出的iPhone以及之后Google公司推出的Android平台在智能电话行业中引领了激烈的竞争。

我们现在所看到的可穿戴设备的趋势是历史的重演,但是当前Google占领了先机,于2014年发布了Android Wear平台,而苹果则在2015年4月发布了它的第一款可穿戴手表。

主流公司(例如三星、LG、Pebble和Jawbone)都携带着自己的可穿戴设备产品投身到此次浪潮当中,现在已经可以在市面上找到这些可穿戴产品了。1.3 普适计算

普适计算是一种计算范式,人类可以通过周边的任何设备随时随地与计算机进行交互。举个例子,假设你正在用办公室的台式机处理一份重要的商业方案,并且几乎快要完成方案文档,但是此时你必须得离开办公室去学校接孩子并送她参加游泳训练。你离开办公地点、接上孩子并把她带到游泳池,当她进行游泳训练时,你可以用智能手机从未完成之处继续处理这份商业方案,并在孩子完成游泳训练之前把文档发送给客户。

当你驾车回家时,收到了来自客户的反馈邮件,集成在你所驾车辆上的计算机带有一个类似Siri或Alexa的应用程序或系统,会为你大声读出客户邮件的内容。当你到家后,可以用智能手表对客户的商业方案作出回应,甚至可以约好下次见面的日期和地点。

上面这个例子听上去有点言过其实,但是此处的重点在于并非是技术控制了人类的生活,而是人类可以通过使用简单的交互完全无缝地随时随地干自己想干的事情,这就是普适计算的哲学基础,它可以让你随时完成一件事情,而不必询问或了解当时的场合能不能做这件事情。

人类和计算设备的交互随处可见,甚至在不知道其发生的情况下就产生了这种交互。

诸如云计算之类的技术以及蓝牙之类的通信协议与标准:低功耗蓝牙(Bluetooth Low Energy,BLE)、近场通信(Near Field Communications,NFC)、无线射频识别(Radio Frequency Identifications,RFID)以及ZigBee都可以让与设备交互成为可能,只要建立设备间彼此通信必需的基础设施并创建所需的上下文就可以达到这样的目的。

应用程序开发人员、设计人员以及服务提供人员应该设计自己的应用程序和服务,使用户能随处用周边的设备与他们进行交互。每种设备都有自己的组成元件,并且是为特定的需求而制造的。在开发应用程序时理解用户与设备进行交互所处环境和需求非常重要,因为这能提供更好的用户体验。例如,由于尺寸和形状因子,在手表应用程序中带有类似键盘的UI就不切实际,而使用可穿戴平台内提供的文本语音转换特性实现语音输入则是可行的。1.4 移动遇上可穿戴

在过去的十来年里,智能电话已经成为我们日常生活不可或缺的一部分,它们已经变成我们自身的自然延伸,让我们随时随地把它们装在口袋里、手包里或钱包里,以便帮助我们完胜日常任务。它们可以执行平常任务,甚至更加重要的任务,这些任务曾经是使用台式机或者笔记本电脑完成的,现在慢慢变成了由口袋大小的智能电话或者平板电脑来完成。

智能电话如此风靡,原因在于其便携性,比起笔记本电脑,它们更加易于四处携带,用户可以在更多需要的场合使用它们。

虽然当前移动电话和平板电脑能够满足大多数计算需求,但在很多情况下它们并不是特别方便。当你一只手正在忙着而想用另一只手拿着电话进行工作时,移动电话用起来就没那么轻松。为了完成一些微不足道的小任务,例如查看当前时间或者快速浏览一下收到的文字通知,你仍然需要把电话从口袋或钱包里拿出来,而可穿戴设备能够通过更加简单快捷的交互方式帮助我们更快地做完这类事情。

可穿戴设备在医疗卫生市场上有巨大的潜力,它们可以每时每刻监控我们的健康情况,并按照所需步骤指导用户拥有健康的生活方式。

可穿戴设备还可用于生物特征身份认证。目前在这方面已经有了一些起步工作,例如Nymi(https://nymi.com/using_the_nymi_band)就将每个人的心率和脉搏频率当作身份认证的一个识别要素。

如果不再带上基于RFID的门卡进入楼宇而是将可穿戴手表用于身份验证会怎么样?甚至它可以让我们无须再牢记不同网站的各式各样的密码,而是用身份识别数据(例如心率和虹膜识别)并构建一个身份验证资料用于登录那些系统。1.5 初识Android Wear

Android Wear是Android操作系统的一个移植版本,专为智能手表之类的可穿戴设备设计。在本书写作时,已经有了众多Android Wear手表制造商,例如LG、摩托罗拉、华为、华硕、Fossil和TAG Heuer:

Android Wear平台和它的竞争对手——苹果公司的watchOS平台的主要区别在于对设备和屏幕尺寸的支持上。

苹果手表目前只能用在42mm和38mm的矩形屏幕上,与之不同的是,Android Wear手表能搭配圆形、正方形和矩形的屏幕。除了标准的42mm和38mm之外,其屏幕尺寸也是多种多样。

另一个要提到的关键之处在于Android Wear设备可以利用针对Android和iOS两个平台开发的应用程序进行配对。

本书将介绍Android Wear应用程序开发所涉及的主题,帮助你掌握该平台,编写出丰富多彩、功能强大的Android Wear应用程序。1.6 本章小结

本章讨论了可穿戴计算范式,并将其与移动和桌面计算平台进行了对比。

下一章将深入研究利用Android Studio IDE设置Android Wear应用程序开发环境的相关主题,所以,请系好安全带,准备继续此次有趣而又让人兴奋的征途吧。第2章设置开发环境“磨刀不误砍柴工。”——亚伯拉罕·林肯

本章将讨论使用Android Studio设置开发环境所涉及的步骤、主题和流程。如果你曾用Android Studio进行过Android应用程序的开发,那么所讨论的某些内容对你来说或许是熟悉的。但是,其中一些Android Wear平台特定的内容对你而言还是很有价值的。2.1 Android Studio

Android Studio是一个基于IntelliJ IDEA的集成开发环境(Integrated Development Environment,IDE)。假如你曾经用IntelliJ IDEA进行过Java开发,那么应该对Android Studio IDE感到得心应手。

Android Studio平台配备有进行Android应用程序开发必需的所有工具和库,如果你是在开发系统上首次安装Android Studio,那么在安装之前首先要确保满足所有的要求。请参考Android开发者网站(http://developer.android.com/sdk/index.html#Requirements)检查你选择的操作系统所必需的选项。

请注意,要想让Android Studio工作,至少要在计算机上安装第7版的JDK。可以在终端窗口中输入如下所示的命令来验证JDK的版本:

如果系统不满足这个要求,那么请使用操作系统上的特定方法进行升级。2.2 安装

Android Studio平台囊括了Android应用程序开发所必需的Android Studio IDE、SDK工具、Google API库以及系统镜像。

请访问http://developer.android.com/sdk/index.html页面,根据操作系统下载Android Studio,并遵循安装指南进行安装。2.3 Git和GitHub

Git是一个分布式版本控制系统,广泛应用于开源项目。在本书学习过程中我们将针对示例代码和示例项目使用Git。

请在终端窗口中输入如下所示的命令,以确认系统上已经安装了Git。

如果还没有安装,可以访问https://git-scm.com/downloads根据操作系统进行下载和安装。

如果你是在Mac OS El Capitan、Yosemite或者Linux发行版(例如Ubuntu、Kubuntu或Mint)操作系统上工作,Git是已经安装好了的。

GitHub(http://github.com)是针对基于Git的开源项目的一个流行的免费主机托管系统。它使得从开源项目检出代码抑或向开源项目提交代码都比以往轻松。如果你还没有GitHub账号,可以在上面免费注册一个。

我们会一直使用GitHub检出Android Wear相关的各种示例项目,也会用它检出本书开发的应用程序示例代码。对于Android应用程序开发而言,我们不必成为Git专家,但是需要熟悉Git命令的基本使用方法以便处理项目。

Android Studio默认内置了Git和GitHub,它可以帮助你从Google的GitHub库导入示例代码,还可以帮助你检出各种不同的应用程序代码示例。2.4 Gradle

Android应用程序开发将Gradle(http://gradle.org/)用作构建系统,它用来构建、测试、运行和打包Android应用程序。

Gradle是声明式的,使用惯例优先原则进行设置和配置。它管理所有用于编译和构建代码工件的依赖库。

幸好Android Studio针对程序开发提炼了大多数常用的Gradle任务和操作,但是某些情况下额外了解一些Gradle知识比较有帮助。现在我们不准备深入探究Gradle,在学习过程中用到它时再讨论它。2.5 Android SKD包

安装好Android Studio之后,它并没有包含开发所需的Android SDK包。Android SDK将工具、平台、其他组件与库分为不同的包,这些包需要使用Android SDK管理器下载。在开始创建应用程序之前,首先需要在Android SDK中添加一些必要的包。

单击菜单Tools|Android|SDK Manager,在Android Studio中启动SDK管理器:

快速浏览上图中的各项。

如你所见,Android SDK位于我的计算机上的/opt/android-sdk文件夹中,根据安装Android Studio时的选择,这个位置在你的计算机上或许有所不同,要注意的重点是,Android SDK的安装位置要与Android Studio(/Applications/Android\Studio.app/)的路径不同。

这在实践中是一种不错的做法,因为这样一来,Android SDK的安装不受Android Studio重新安装或升级的影响,反之也是如此。

在SDK Platforms选项卡上,选择较新版本的Android SDK,例如6.0版、5.1.1版和5.0.1版。

根据计划在应用程序中支持的Android版本,也可以选择其他较老版本的Android。

在右下方勾选Show Package Details选项,将会显示指定版本的Android SDK中要安装的所有包:

为了安全起见,请选择所有包。正如你可能已经注意到的那样,Android Wear ARM和Intel系统镜像都包含在包选项中。

现在单击SDK Tools选项卡,确保选择下列选项:

·Android SDK Build Tools

·Android SDK Tools 24.4.1(最新版本)

·Android SDK Platform-Tools

·Android Support Repository,rev 25(最新版本)

·Android Support Library,rev 23.1.1(最新版本)

·Google Play services,rev 29(最新版本)

·Google Repository,rev 24(最新版本)

·Intel X86 Emulator Accelerator(HAXM installer),rev 6.0.1(最新版本)

·Documentation for Android SDK(可选)

SDK窗口如下图所示:

不要在SDK Update Sites选项卡中进行任何修改,保持更新站点为默认配置。

单击OK按钮,下载并安装选择的所有包和组件要花上一段时间。2.6 Android虚拟设备

Android虚拟设备(Android Virtual Device,AVD)可以让我们利用Android模拟器测试代码,它可以让我们选择各种不同的Android系统目标版本和形状因子进行测试。

单击菜单Tools|Android|AVD Manager启动Android虚拟设备管理器。

在AVD Manager窗口中单击左下方的Create New Virtual Device按钮,在紧接着出现的界面上选择Wear类别:

对于Release Name选择Marshmallow,对于API Level选择23,对于ABI选择x86,其他选项保留默认设置,如下图所示:请注意,在本书写作时,最新的Android版本是“棉花糖”(Marshmallow),其API等级为23。当你在阅读本章时,可能会有更新的版本出现,随意选择当前最新的版本即可。此外,如果你想支持或测试较早的Android版本,那么按照上图所示那样选择即可。

单击Next按钮之后,出现配置窗口:

在成功选择了虚拟设备之后,应该看一下Android虚拟设备列表中列出的各项,如下图所示:在开发过程中,虽然不必使用真实的Android Wear设备,但是使用真实设备有时会带来便利并加快开发进度。出于本书的考虑,我们将主要使用Android模拟器进行开发和测试。2.7 创建框架应用程序

既然已经准备好了构建可穿戴设备应用程序所必需的组件和配置,那么创建一个框架应用程序来测试一下我们到目前为止所做的准备。

在Android Studio的Quick Start菜单中单击Import an Android code sample选项:

在Wearable类别中选择Skeleton Wearable App:

单击Next按钮,选择项目的存放位置。

正如你所看到的那样,框架应用程序项目是从GitHub上的Google示例代码库克隆得到的:

单击Finish按钮检出源代码,然后Android Studio就会编译和构建代码并用准备让其执行。

下图表明Gradle构建过程成功完成,没有出现任何错误。单击下图中三角形的播放按钮运行配置:

当应用程序开始运行时,Android Studio会提示我们选择部署目标。可以选择之前创建的模拟器,然后单击OK按钮:

当代码编译完成并上传到模拟器中后,将会启动框架应用程序的主活动,如下图所示:

单击SHOW NOTIFICATION选项卡,出现如下图所示的通知:

单击START TIMER选项卡启动定时器并让它运行5秒,然后单击FINISH ACTIVITY选项卡关闭此活动,让模拟器返回初始界面:2.8 本章小结

通过介绍安装说明、要求、SDK工具、包以及Android Wear开发所需的其他组件,本章讨论了设置Android Studio开发环境所涉及的流程。

我们还从Google的示例代码库中检出了可穿戴设备框架应用程序的源代码,并在Android设备模拟器上成功进行了运行和测试。

在下一章中,我们将利用到目前为止所完成的配置和设置,从零开始完成一个实际的Android Wear应用程序。第3章开发Android Wear应用程序“所有的妥协,都基于双方互谅互让,但基本底线绝不能够退让。放弃基本底线实际上就是投降。”——莫罕达斯·甘地

本章将介绍上一章中通过Android Studio导入的框架项目所涉及的相关概念,并且将详细讨论涉及的代码,以便帮助我们对Android Wear应用程序的基础构建模块稍有了解。

然后我们将利用Android Studio从零开始新创建一个Android Wear应用程序。本章将详细讨论创建该应用程序所涉及的每个步骤,还要讨论必要的代码修改以及运行该程序以查看所希望的输出结果。

让我们挽起袖子,看看实际代码吧!3.1 框架应用程序

如果你能回忆起前一章的内容,我们曾通过应用Android Studio导入了示例项目创建了一个可穿戴设备框架应用程序。如果你对究竟代码究竟从何而来感到困惑,下面给出该项目的GitHub库链接:https://github.com/googlesamples/android-Skeleton­Weara­bleApp/。

Android Studio一直会进行更新,在本书写作时,最新可用的是Android Studio 2.0的第7次预览版。当你阅读本书时,版本可能没有变化,也可能发生了变化。

如果出于某些原因,Android Studio无法让你导入上述框架应用程序或者Google的GitHub示例库中的示例代码库不可用,那么你可以从笔者在自己的GitHub库中创建的该项目分支进行克隆:https://github.com/siddii/android-SkeletonWearableApp。如果你之前进行过Android应用程序开发,那么你应该能理解本章内容。如果没有,那么这是个学习Android应用程序开发相关基本概念和基础知识的好机会。3.2 Android清单文件

每个Android应用程序都包含一个名为AndroidManifest.xml的Android清单文件。该文件包含Android操作系统运行应用程序所需的所有必要的信息,清单文件用于声明活动、服务、意图、SDK版本、特性、权限以及Android应用程序所需的其他特定的组件和行为元素。

我们应当尤其注意前述可穿戴设备框架应用程序的对应Android清单文件中的第23行:

该行大体上向Android操作系统说明该程序是Android Wear应用程序。为了证明这一点,可以试着在AndroidManifest.xml文件中注释掉这一行并启动应用程序。当用模拟器启动该应用程序时,应该会看到如下图所示的错误消息:

试读结束[说明:试读内容隐藏了图片]

下载完整电子书


相关推荐

最新文章


© 2020 txtepub下载