安卓编年史(13):Android 2.2 Froyo——更快更华丽
Android 2.2 Froyo——更快更华丽
安卓 2.2 在 2010 年 5 月,也就是 2.1 发布后的四个月后亮相。Froyo(冻酸奶)的亮点主要是底层优化,只为更快的速度。Froyo 最大的改变是增加了 JIT 即时编译。JIT 自动在运行时将 java 字节码转换为原生码,这会给系统全面带来显著的性能改善。
浏览器同样得到了性能改善,这要感谢整合了来自 Chrome 的 V8 Javascript 引擎。这是安卓浏览器从 Chrome 借鉴的许多特性中的第一个,最终系统内置的浏览器会被移动版 Chrome 彻底替代掉。在那之前,安卓团队还是需要提供一个浏览器。从 Chrome 借鉴特性是条升级的捷径。
在谷歌专注于让它的平台更快的同时,苹果正在让它的平台更全面。这位谷歌的竞争对手在一个月前发布了 10 英寸的 iPad,先行进入了平板时代。尽管有些搭载 Froyo 和 Gingerbread 的安卓平板发布,但谷歌的官方回应——安卓 3.0 Honeycomb(蜂巢)以及摩托罗拉 Xoom——在 9 个月后才来到。
Froyo 底部添加了双图标停靠栏以及全局搜索。 [Ron Amadeo 供图]
Froyo 主屏幕最大的变化是底部的新停靠栏,电话和浏览器图标填充了先前抽屉按钮左右的空白空间。这些新图标都是现有图标的白色定制版本,并且用户没办法自己设置图标。
默认布局移除了所有图标,屏幕上只留下一个使用提示小部件,引导你点击启动器图标以访问你的应用。谷歌搜索小部件得到了一个谷歌 logo,它同时也是个按钮。点击它可以打开一个搜索界面,你可以限制搜索范围是在互联网、应用或是联系人之内。
下载页面有了“更新所有”按钮,这是个 Flash 应用,一个 flash 驱动的一切皆有可能的网站,以及“移动到 SD”按钮。 [Ryan Paul 供图]
还有一些优秀的新功能加入了 Froyo,安卓市场加入了更多的下载控制。有个新的“更新所有”按钮固定在了下载页面底部。谷歌还添加了自动更新特性,只要应用权限没有改变就能够自动安装应用;尽管如此,自动更新默认是关闭的。
第二张图展示了 Adobe Flash 播放器,它是 Froyo 独有的。这个应用作为插件加入了浏览器,让浏览器能够有“完整的网络”体验。在 2010 年,这意味着网页充满了 Flash 导航和视频。Flash 是安卓相比于 iPhone 最大的不同之一。史蒂夫·乔布斯展开了一场对抗 Flash 的圣战,声称它是一个被淘汰的、充满 bug 的软件,并且苹果不会允许它在 iOS 存在。所以安卓接纳了 Flash 并且让它在安卓上运行,给予用户在安卓上拥有接近可用的 flash 实现。
在那时,Flash 甚至能够让桌面电脑崩溃,所以在移动设备上一直保持打开状态会带来可怕的体验。为了解决这个问题,安卓浏览器上的 Flash 可以设置为“按需打开”——除非用户点击 Flash 占位图标,否则不会加载 Flash 内容。对 Flash 的支持将会持续到安卓 4.1,Adobe 在那时放弃并且结束了这个项目。Flash 从头到尾从未在安卓上完美运行过。而 Flash在 iPhone 这个最流行的移动设备上的缺失,推动了互联网最终放弃了这个平台。
最后一张图片显示的是新增的移动应用到 SD 卡功能,在那个手机只有 512 MB内置存储的时代,这个功能十分的必要的。
驾驶模式应用。相机现在可以旋转了。 [Ron Amadeo 供图]
相机应用终于更新支持纵向模式了。相机设置被从抽屉中移出,变成一条半透明的按钮带,放在了快门按钮和其他控制键旁边。这个新设计看起来从 Cooliris 相册中获得了许多灵感,半透明的、有弹性的聊天气泡弹出窗口。看到更现代的Cooliris 风格 UI 设计被嫁接到皮革装饰的相机应用确实十分奇怪——从审美上来说一点都不搭。
半残缺的 Facebook 应用是个常见的 2x3 导航页面的优秀范例。谷歌 Goggles 被包含了进来但同样是残缺的。 [Ron Amadeo 供图]
不像在安卓 2.0 和 2.1 中包含的 Facebook 客户端,2.2 版本的仍然部分能够工作并且可以登录 Facebook 服务器。Facebook 应用是谷歌那时候设计指南的优秀范例,它建议应用拥有一个含有 3x2 图标方阵的导航页并作为应用主页。
这是谷歌的第一个标准化尝试,将导航元素从菜单按钮里移到屏幕上,以便用户找到它们。这个设计很实用,但它在打开应用和使用应用之间增加了额外的障碍。谷歌不久后会意识到当用户打开一个应用,显示应用内容而不是中间导航页是个更好的主意。以 Facebook 为例,打开应用直接打开信息订阅会更合适。并且不久后应用设计将会把导航降级到二层位置——先是作为顶部的标签之一,后来谷歌放在了“导航抽屉”,一个含有应用所有功能位置的滑出式面板。
还有个预装到 Froyo 的应用是谷歌 Goggles,一个视觉搜索应用,它会尝试辨别图片上的主体。它在辨别艺术品、地标以及条形码时很实用,但差不多也就这些了。最先的两个设置屏幕,以及相机界面,这是应用里仅有的现在还能运行的了。由于客户端太旧了,实际上你如今并不能完成一个搜索。应用里也没什么太多可看的,也就一个会返回搜索结果页的相机界面而已。
Twitter 应用,一个充满动画的谷歌和 Twitter 的合作成果。 [Ron Amadeo 供图]
Froyo 拥有首个安卓 Twitter 应用,实际上它是谷歌和 Twitter 的合作成果。那时,Twitter 应用是安卓应用阵容里的大缺憾之一。开发者们更偏爱 iPhone,加上苹果占领先机和严格的设计要求,App Store 里可选择的应用远比安卓的有优势。但是谷歌需要一个 Twitter 应用,所以它和 Twitter 合作组建团队让第一个版本问世。
这个应用代表了谷歌的新设计语言,这意味着它有个中间导航页以及对动画要求的“技术演示”。Twitter 应用甚至比 Cooliris 相册用的动画效果还多——所有东西一直都在动。所有页面顶部和底部的云朵以不同速度持续滚动,底部的 Twitter 小鸟拍动它的翅膀并且左右移动它的头。
Twitter 应用实际上有点 Action Bar 早期前身的特性,在安卓 3.0 中引入了一条顶部对齐的连续控制条。沿着所有屏幕的顶部有条拥有 Twitter 标志以及如搜索、刷新和发推这样的按钮的蓝色横栏。它和后来的 Action Bar 之间大的区别在于 Twitter / 谷歌这里的设计的右上角缺少“上一级”按钮,实际上它在应用里用了完整的第二个栏位显示你当前所在位置。在上面的第二张图里,你可以看到整条带有“Tweets”标签的专用于显示位置的栏(当然,还有持续滚动的云朵)。第二个栏的 Twitter 标志扮演着另一个导航元素,有时候在当前部分显示额外的下拉区域,有时候显示整个顶级快捷方式集合。
2.3 Tweet 流看起来和今天的并没有什么不同,除了隐藏的操作按钮(回复,转推等),都在右对齐的箭头按钮里。它们弹出来的是一个聊天气泡菜单,看起来就像导航弹窗。仿 Action Bar 在发推页面有重要作用。它安置着 twitter 标志,剩余字数统计,以及添加照片、拍照,以及提到联系人按钮。
Twitter 应用甚至还有一对主屏幕小部件,大号的那个占据 8 格,提供了发推栏、更新按钮、一条推文,以及左右箭头来查看更多的推文。小号的显示一条推文以及回复按钮。点击大号的小部件的发推栏立即打开了“新推文”主窗口,这让“更新”按钮变得没有价值。
Google Talk 和新 USB 对话框。 [Ron Amadeo 供图]
其他部分,Google Talk(以及没有截图的短信应用)从暗色主题变成了浅色主题,这让它们看起来和现在的更接近现代的应用。USB 存储界面会在你设备接入电脑的时候从一个简单的对话框进入全屏界面。这个界面现在有个一个异形安卓机器人 / USB 闪存盘混合体,而不是之前的纯文字设计。
尽管安卓 2.2 在用户互动方式上没有什么新特性,但大的 UI 调整会在下两个版本到来。然而在所有的 UI 工作之前,谷歌希望先改进安卓的核心部分。
语音操作——口袋里的超级电脑
2010 年 8 月,作为语音搜索应用的一项新功能,“语音命令”登陆了安卓市场。语音命令允许用户向他们的手机发出语音命令,然后安卓会试着去理解他们并完成任务。像“导航至[地址]”这样的命令会打开谷歌地图并且开始逐向导航至你所陈述的目的地。你还可以仅仅通过语音来发送短信或电子邮件、拨打电话、打开网站、获取方向,或是在地图上查看一个地点。
语音命令是谷歌新应用设计哲学的顶峰。语音命令是那时候最先进的语音控制软件,秘密在于谷歌并不在设备上做任运算。一般来说,语音识别是 CPU 密集型任务。实际上,许多语音识别程序仍然有“速度与准确性”设置,用户可以选择他们愿意为语音识别算法运行等待的时间——更多的 CPU 处理意味着更加准确。
谷歌的创新在于没有劳烦手机上能力有限的处理器来进行语音识别运算。当说出一个命令时,用户的声音会被打包并通过互联网发送到谷歌云服务器。在那里,谷歌超算中心的超级计算机分析并解释语音,然后发送回手机。这是很长的一段旅程,但互联网最终还是有足够快的速度在一两秒内完成像这样的任务。
很多人抛出词语“云计算”来表达“所有东西都被存储在服务器上”,但这才是真正的云计算。谷歌在云端进行这些巨量的运算操作,又因为在这个问题上投入了看似荒唐的 CPU 资源数目,所以语音识别准确性的唯一限制就是算法本身了。软件不需要由每个用户独立“训练”,因为所有使用语音操作的人无时不刻都在训练它。借助互联网的力量,安卓在你的口袋里放了一部超级电脑,同时相比于已有的解决方案,把语音识别这个工作量从口袋大小的电脑转移到房间大小的电脑上大大提高了准确性。
语音识别作为谷歌的项目已经有一段时间了,它的出现都是因为一个 800 号码。1-800-GOOG-411是个谷歌从 2007 年 4 月起开通的免费电话信息服务。它就像 411 信息服务一样工作了多年——用户可以拨打这个号码询问电话号码——但是谷歌免费提供这项服务。查询过程中没有人工的干预,411 服务由语音识别和文本语音转换引擎驱动。在人们教谷歌如何去听之后,又用了三年才有实现语音命令的可能。
语音识别是谷歌长远思考的极佳范例——公司并不怕在一个可能成不了商业产品的项目上投资多年。今天,语音识别驱动的产品遍布谷歌。它被用在谷歌搜索应用的输入,安卓的语音输入,以及 Google.com。同时它还是 Google Glass 和 Android Wear 的默认输入界面。
谷歌甚至还在输入之外的地方使用语音识别。谷歌的语音识别技术被用在了转述 Youtube 视频上,它能自动生成字幕供听障用户观看。生成的字幕甚至被谷歌做成了索引,所以你可以搜索某句话在视频的哪里说过。语音是许多产品的未来,并且这项长期计划将谷歌带入了屈指可数的拥有自家语音识别服务的公司行列。大部分其它的语音识别产品,像苹果的 Siri 和三星设备,只能使用 Nuance 的语音识别,并且为其支付了授权费。
在计算机听觉系统设立运行之后,谷歌下一步将把这项策略应用到计算机视觉上。这就是为什么像 Google Goggles,Google 图像搜索和 Project Tango 这样的项目存在的原因。就像 GOOG-411 的那段日子,这些项目还处在早期阶段。当谷歌的机器人部门造出了机器人,它会需要看和听,谷歌的计算机视觉和听觉项目会给谷歌一个先机。
Ron Amadeo / Ron是Ars Technica的评论编缉,专注于安卓系统和谷歌产品。他总是在追寻新鲜事物,还喜欢拆解事物看看它们到底是怎么运作的。 @RonAmadeo