探索Google Glass的Mirror API:从设计原则、Hello World、时间轴卡片、地图,到分享权限

氪友FDbg·2013-04-16 21:34
今天 Google 对外公布了一系列有关 Google Glass 的硬件细节,同时也公开了 Google Glass 的开发者 API,名为Google Mirror API。我们从几方面来看一下 Glass 的 API 会容许开发者做些什么:Glass应用的设计原则、时间轴卡片、Hello World程序、GPS定位和地图、和分享权限。

今天Google对外公布了一系列有关Google Glass的硬件细节,同时也公开了Google Glass的开发者API,名为Google Mirror API。我们从几方面来看一下Glass的API会容许开发者做些什么。

Glass应用的设计原则

Google Mirror API是一种RESTful Web服务类API;开发者给Google Glass写的应用叫做"Glassware"。Google希望Glass可以带给用户“下一代的移动互联网体验”,也给出4条相应的设计原则:

  • 为Glass而设计。你的应用应该是专门为Glass而设计、开发和测试,以保证适合Glass的用户体验。
  • 不要妨碍用户。Glass的用户希望在需要时使用科技,而在不需要是让科技消失。不要过分使用用户不期待的通知。
  • 及时性。信息的实时性和及时性会让Glass这个平台最有效。
  • 避免用户意料之外的事情。应用中包括用户没有期待的功能在任何平台上都是不好的,但是因为Glass和用户的生活体验太接近了,所以更要避免。你需要对用户诚实解释你应用的目的和所需要的用户授权。

很显然,Google对待Glass的态度有点像对待自己的小孩儿一样,一切都是小心翼翼的,而Glass的应用门槛可能也会比Android应用要更高一些。

时间轴卡片的一切

Glass向用户展示信息的主要方式是通过”时间轴卡片“(Timeline Card)。时间轴卡片可以显示文字、图片、视频和 HTML。除了单卡片显示之外,开发者也可以将多张卡片放在一起(bundle),然后用户可以通过声音或者触控浏览。

这当然也意味着开发者们的"Glassware"应用最终的信息呈现也是通过这些时间轴卡片。最常见的API行为包括:

  • 在时间轴上创建新卡片
  • 更新原来的卡片
  • 通过卡片的菜单获得用户的输入
  • 接受Glass的通知,所以可以对用户的行为做相应的反应

附加背景的时间轴卡片是这样的:

Hello World

每一位程序员在学习一个新语言或API时,做的第一件事应该都是写“Hello World “。Google Mirror API可以支持Python和Java等语言,这是Java的"Hello World"程序:

TimelineItem timelineItem = new
TimelineItem();
timelineItem.setText("Hello world");
service.timeline().insert(timelineItem).execute();

这种架构对于使用过其它RESTful API的开发者应该还是比较容易上手的。显示的结果是:

GPS定位和地图

另一类应该是很常用的API Call应该是与地理位置有关的,因为我们可以想象很多Glass的应用会是属于LBS类型的应用。

开发者可以通过Mirror API直接请求用户的最后已知位置,也可以通过"订阅”(subscribe)来获取用户位置的更新,但是对于这种订阅式的位置更新,Google限制Glass在只能每十分钟发送一次。这里的原因应该是为了节省电池使用,但应该也有出于用户隐私的一些考虑。

Glass和Google地图有深度结合,可以通过Mirror API直接渲染出一个Google地图的图片,开发者可以指定地点、路线、地图宽度、地图高度和聚焦等参数。显示结果也是通过时间轴卡片:

分享权限和“联系人”

在默认权限下,Glass应用只可以控制应用自己创造的时间轴卡片。用户需要通过一种”联系人“方式的授权来容许跨应用的时间轴卡片分享,以及分享用户自己用Glass创造的媒体,比如照片和视频。

来获得分享授权,Glass应用需要发送给用户一个请求,其中要包含应用的ID、名字和图标。Google建议图标为640x360像素的PNG文件。

总而言之

我们可以看得出,不同于Android API,Google Mirror API目前并不容许开发者直接与硬件接轨,而且是非常重视用户隐私和遵守权限的。这个原因很多,Glass是一种全新的智能设备,而且与用户的距离比以前任何一种智能设备要更亲密,所以Google在API方面最开始采取比较保守的态度是意料之中的。第一代iPhone的API相比现在的iOS API也要单薄很多,Google必定会继续扩展Mirror API中的功能,让开发者们可以实现更多的应用设计。

这是Google Mirror API的地址,Java的示范应用,和Python的示范应用

+1
0

好文章,需要你的鼓励

参与评论
评论千万条,友善第一条
后参与讨论
提交评论0/1000

下一篇

观棋者不语,可看球的就会在屏幕前评论特多。PrePlay可以让你一边看球一边在app里参与预测,互动度更强。这家赛事预测应用开发商新获470万美元的B轮融资。你不仅可以在app里预测一场比赛的最终结果,哪个球员会打入关键球,甚至可参与预测每一次进攻情况,这对数据及时性就要求很高。

2013-04-16

36氪APP让一部分人先看到未来
36氪
鲸准
氪空间

推送和解读前沿、有料的科技创投资讯

一级市场金融信息和系统服务提供商

聚焦全球优秀创业者,项目融资率接近97%,领跑行业