Android Wear是Google为智能手表打造的全新智能平台。2012年,由于Google发布谷歌眼镜(谷歌眼镜就像是可佩带式智能手机,让用户可以通过语音指令,拍摄照片,发送信息,以及实施其他功能),引起了人们对可穿戴设备的关注。而且在智能手机的创新空间逐步收窄和市场增量接近饱和的情况下,智能可穿戴设备作为智能终端产业下一个热点已被市场广泛认同。
可穿戴设备即直接穿在身上,或是整合到用户的衣服或配件的一种便携式设备。可穿戴设备多以具备部分计算功能、可连接手机及各类终端的便携式配件形式存在,主流的产品形态包括:
可手腕穿戴的watch类,包括智能手表、智能手环等产品
可脚穿戴的shoes类,包括耐克智能鞋等产品
可眼睛穿戴的Glass类,包括 Google眼镜等产品
以及智能服装、配饰等其他各类非主流产品形态。
2014年,Google进军智能手表市场,为智能手表打造全新的智能平台 Android Wear。与Android一样,Android Wear 也是一个开放平台,它允许第三发厂商加入进来生产多样的Android Wear设备,例如:LG G Watch1、G Watch2、三星 Gear Live、Moto 360 等设备。同样也为开发者提供相应的SDK,方便开发者进行Android Wear APP的开发,例如几款比较流行的APP:1Weather、Intellicom Watch Face、WearADay、小马手表管家等,甚至也有了基于AndroidWear的定制手表系统TicWear。
图24.1 Android Wear 设备
Android Wear设备目前的主要功能是类似于手机的延伸、或者外挂,很多的功能必须与手机连接才可以使用。主要有以下功能:
q 展示手机中的数据或者控制手机
q 展示手机通知栏中的通知
q 来电时震动,提示用户接听、挂断电话
q 语音回复短信,目前只支持环聊
q “OK Google” 语音指令功能,通过 Google Now实现语音功能。目前国内无法使用Google服务,所以该功能没法使用(可以通过其他手段设置,但特别麻烦)。
q 自定义表盘
q 通过传感器检测身体健康,可以检测每天走的步数、检测心率等
图24.2 Android Wear 的常用功能
目前,Android Wear 设备的主要形态分为圆形屏幕与方形屏幕两种,所以开发的时候,需要考虑如何来适应多种屏幕。Android Wear 开发主要从以下几个方面入门:
q 开发环境搭建,包括 IDE,穿戴设备(Android Wear简称)模拟器创建、穿戴设备应用创建等
q 手持设备(Android手机、平板的简称)与穿戴设备的同步通知功能
q 穿戴设备UI界面
q 手持设备与穿戴设备数据通信
接下来看下如何搭建穿戴设备的开发环境
24.1 穿戴设备开发环境搭建
Android Wear 开发环境与Android的开发环境一样,都是基于Android SDK的,但是官方建议使用 Android Studio作为IDE(集成开发环境)。使用AndroidStudio 可以非常方便的来创建、开发、打包Android Wear APP。
开发环境需要在Android 开发环境的基础上搭建,主要从以下几个步骤开始:
- 下载Android Wear SDK
- 创建穿戴设备模拟器
- 连接手持设备与穿戴设备模拟器到开发环境
- 创建Android Wear 项目,运行
24.1.1.1 下载Android Wear SDK
下载穿戴设备SDK需要使用SDK Manager来进行下载,打开Android Studio后,点击工具栏上的 图标,打开SDK Manager。勾选需要下载的包,点击下载即可。
图24.3 Android Wear 开发环境需要的下载的开发包
注意:Android 4.4W.2(API 20)为目前最新SDK,如果后期SDK推出更高版本,建议下载最高版。手持设备与穿戴设备的同步通知功能需要使用最新版的V4包,所以需要将 Android Support Library 跟新至最新版。而且手持设备与穿戴设备数据同步功能是基于 Google Play services的,所以也需要下载这些包。
24.1.1.2 创建穿戴设备模拟器
穿戴设备模拟器创建与手持设备模拟器的创建方式一致,需要使用AVD Manager来创建。在 Android Studio的工具栏点击图标,打开AVD Manager。然后点击左下角的“Create Virtual Device…”按钮,打开创建模拟器向导,完成Android Wear模拟器的创建,具体操作见下图。
图24.4 模拟器创建-选择方形或圆形屏幕,建议每种屏幕创建一个模拟器
图24.5 模拟器创建-选择最新系统版本
图24.6 模拟器创建-勾选UseHostGPU,加快运行速度
图24.7 模拟器创建完成,点击绿色三角按钮,启动模拟器
图24.8 Android Wear 模拟器启动之后的效果
24.1.1.3 连接手持设备与穿戴设备模拟器到开发环境
由于Android 穿戴设备是没有USB接口的,而且很多功能必须依赖手机才能实现,如果要对穿戴设备进行开发调试的话,就必须要通过连接手机才能进行进行。连接手持设备的具体步骤如下:
- 在手机上安装Google Play,从Google Play上下载Android Wear应用,安装到手机。Android Wear是Google推出的,专门用于通过蓝牙连接 Android穿戴设备的应用。
- 通过USB连接手机到开发环境。
- 设置 AVD的通信端口到连接的手机上,且每次连接手机都要重新设置。
adb -d forward tcp:5601 tcp:5601
- 打开手机上的AndroidWear 应用,连接穿戴设备模拟器。
具体的连接方式,如下图所示:
图24.9 Android Wear 模拟器与手机连接
注意:由于目前国内不能使用Google服务,所以手机上都没有安装GooglePlay。如果要安装GooglePlay,需要将手机Root后,通过”谷歌安装器”来安装GooglePlay,或者通过安装第三方Recovery之后再把相应的zip包刷进去。具体的操作需要读者自己来解决,因为每一款手机的安装操作都可能不太一样。GooglePlay安装后,需要登录Google服务器进行下载操作,但是目前Google网站被墙,建议使用 fqroute FQ后再登录 GooglePlay,下载Android Wear。如果在GooglePlay上找不到Android Wear,可以到国内的软件市场下载,目前360安全市场可以下载。但是需要注意,Android Wear 是依赖GooglePlay的,所以只安装Android Wear是不行的。
如果开发者持有穿戴设备设备,同样可以通过蓝牙来进行调试。主要步骤如下:
- 打开手机的USB调试
- 在穿戴设备启动蓝牙调试(Android Wear 系统界面目前不支持中文但应用支持)
a) 点击屏幕,打开 Wear Menu
b) 滑动到底部,点击 Settings
c) 滑动到底部,如果没有 Developer Options,点击About,然后多次点击 Build number,开启开发者模式
d) 右划回到上一界面,点击 Developer Options
e) 开启 Debug over Bluetooth,ADB debugging
- 启动手机的AndroidWear应用,点击右上角的设置图标,打开设置
- 在 Settings 界面底部,勾选 Debug over Bluetooth后,会有提示
Host: disconnected //主机 未连接
Target: connected //Android Wear 已连接
- 手机通过USB连接电脑,执行命名
adb forward tcp:4444 localabstract:/adb-hub
adb connect localhost:4444
- 在手机的AndroidWear应用上,可以看到连接状态已经变为
Host: connected
Target: connected
24.1.1.4 创建Android Wear 项目
AndroidWear 应用程序直接在穿戴设备设备上运行,可以访问其上的传感器与GPU。这些应用程序与其他设备的程序一样使用Android SDK开发,但是在UI设计上、使用的功能上有很大的区别。以下是穿戴设备应用程序与手持设备应用程序的最大区别:
- 系统执行超时时间。如果穿戴设备应用展示了一个Activity,并且用户短时间内没有与Activity进行交互端,设备就会进入睡眠,屏幕关闭。当设备被唤醒,穿戴设备显示的是 Home界面而不是 Activity界面。如果需要持续的显示一些内容,可以创建一个通知在Context Stream显示。
- 穿戴设备应用相对手持设备应用来说,安装包体积较小,功能较少。他们仅仅显示一些主要的UI界面,相当于是手持设备应用的子集。通常,应该尽可能的将执行操作的功能放在手持设备应用上,然后返回操作的结果到穿戴设备应用。
- 用户不能直接下载穿戴设备应用,而是要将穿戴设备应用绑定到手持设备应用上。当用户安装手持设备应用,系统会自动安装穿戴设备应用到穿戴设备。如果是开发调试,则可以直接安装穿戴设备应用。
- 穿戴设备应用支持大多数的API,但是,不支持以下API:
android.webkit; android.print;
android.app.back; android.appwidget;
android.hardware.usb;
一个包含穿戴设备应用的组合手持设备应用同样需要发布到 Googleplay。Android Wear不支持 GooglePlay ,所以用户下载组合手持设备应用,会自动同步穿戴设备应用到穿戴设备设备上。手持设备应用可以用来做繁重计算的操作、网络操作、或者其他操作,最后将结果返回到穿戴设备应用上。
创建穿戴设备应用项目与普通Android项目一样,运行AndroidStudio后点击start a new Android Stuidio project,然后会打开创建应用的向导,一步步next完成即可。但是需要注意,创建时同时勾选 Phone and Tablet与Wear,如图24.10。
图24.10 Android Wear 项目创建
当创建操作完成后,AndroidStudio创建一个新的项目包含2个模块,mobile 与wear如图 24.11。现在的这个项目就包含穿戴设备与手持设备的应用,可以创建 Activity、Service、自定义布局、等等。在手持设备,主要用来做大部分的繁重操作,例如 网络通信、进程间通信、大量的用户交互等。当这些操作完成,可以使用Notification或同步数据到穿戴设备上。
图24.11 Android Wear 项目创建
在开发过程中,可以像以前一样,直接安装应用到穿戴设备,使用 adb install 或者 AndroidStudio上的Play按钮。当项目完成、准备发布应用给用户,应该将穿戴设备应用嵌入到手持设备应用。当用户在GooglePlay上下载、安装应用后,连接手机的穿戴设备设备会自动安装穿戴设备应用。
注意:在平常开发中使用的是 Debug 签名,穿戴设备应用不会自动安装到手表上,只有通过签名后才可以自动安装。点击Studio的菜单 Build,选择Generate Signed APK…进行签名,具体的操作参见后面章节。
运行后的效果如图24.11所示,至此,开发环境就搭建好了。
图24.12 Android Wear 项目创建