移动版 Firefox 上手评测
移动版 Firefox 基于 Fennec 项目,该项目于 2007 年开始,目标是为现代手持产品带来完整的 Firefox 浏览体验。此后几年里,移动计算硬件的进步极大提高了智能手机的性能。硬件提升加上 Mozilla 的积极优化,让移动版 Fireofx 成为可能。
Mozilla 希望将移动版 Firefox 带给多个操作系统,但开发初始阶段主要专注于 Maemo 和 Windows Mobile 平台。Maemo 平台上首先成熟,推出 1.0 版。我在采用 ARM Cortex-A8 处理器的 Nokia N900 智能手机上对移动版 Firefox 进行了测试。
要在 N900 上安装 Firefox 移动版只需用 N900 的自带浏览器打开 firefox.com/m,点击“Download”按钮,然后 Maemo 5 包管理器自动启动。你只需选择对应的库,安装包。完成后从程序列表里启动程序。
用户界面
移动版 Firefox 的用户界面在基本设计上和 2008 年的 alpha 版 Fennec 相同。程序的观感总体上没什么变化,只有一些细小的美化,让它更贴合 Maemo 5。屏幕顶部主要是地址栏,在用户不打字时显示网页标题和刷新按钮。地址栏被激活后会弹出收藏夹(下图),输入文字时提供 AwesomeBar 功能。
标签页以缩略图形式垂直排列在左边栏。每个竖列最多放置四个标签页。如果总数超过四个,就会在右侧加一列继续排列。点击缩略图就会打开对应标签页;点击缩略图左侧的关闭按钮直接关闭标签页。关闭按钮在 N900 上看起来有点小,但点击毫不困难,我也没有发生过误触。
右边栏顶部有个按钮会将当前页面保存为书签,很像桌面版 Firefox 地址栏里的星型按钮。往下是前进/后退按钮,用来访问历史页面。但你无法像在桌面版上那样查看所有历史页面。
设置面板里面有浏览器设置、下载和扩展。面板里的设置项比较有限,你可以选择是否显示图片、是否使用 JavaScript、控制 cookie、清空个人数据。幸运的是高级用户们仍然可以像用桌面版一样,在网址栏输入“about:config”来随心所欲地修改几乎一切设置。
移动版 Firefox 支持扩展系统,但无法运行标准的 Firefox 扩展。移动版的用户界面和桌面版有着质的区别,扩展必须进行移植方能使用。有些 Firefox 扩展已经过修改,包括 NoScript 等颇为流行的应用。也有一些扩展专为移动版设计,其中有个让你可以直接在地址栏发送 twitter 更新。
性能
移动版 Firefox 在 N900 上提供了可以接受的性能,足以满足我的日常浏览需求。尽管它的页面加载速度整体上比一些移动版 Webkit 内核浏览器稍慢,但它有一个非常快的 JavaScript 引擎。
桌 面平台浏览器 JavaScript 性能因运行环境的进步受益匪浅。绝大多数现代 JavaScript 引擎都通过 JIT(just-in-time)和原生 code emission 提供了远比传统解释器更高的性能。不幸的是,这些新引擎过了很长时间才顺利登陆 ARM。
Maemo 平台的移动版 Firefox 采用 Mozilla 的 TraceMonkey 引擎。我在 about:config 里看了一下, 用户界面和网页内容都默认开启了 TraceMonkey 的 JIT。它在特定类型网站上带来了很大提升。
我在之前测试 Fennec 时遇到了很多问题。08 年在 N800 上测试 Alpha 版 Fennec 时,Slashdot 网站的评论系统会造成浏览器卡死。现在完全不同了,加载 Slashdot 非常顺畅。
测试
Mozilla 宣称 Firefox 在 N900 上提供了所有手机上最强的 JavaScript 渲染性能。我做了些测试看看这话是否属实。我运行了 SunSpider JavaScript 性能测试, 移动版 Firefox 1.0 在 N900 上的结果为 17.1 秒。其它智能手机的测试结果:移动版 Safari 在 3GS 上 16.7 秒;Droid 41.4 秒;Palm Pre 24.5 秒;Nexus One 15.9 秒。
我还测试了 N900 自带的 MicroB 浏览器。MicroB 采用旧版的 Firefox Gecko HTML 渲染器,没有 TraceMonkey。运行 SunSpider 性能测试的结果是 37.5 秒,比移动版 Firefox 慢了一倍。
当然,JavaScript 执行速度只是浏览器性能的一方面。MicroB 虽然在 JavaScript 引擎上不如移动版 Firefox,但它在一些领域更有优势。
移动版 Firefox 采用一种特殊的合成 hack,以便让用户界面里的拖拉和缩放操作显得更流畅。浏览器用户界面里的实际内容通过 Mozilla 的 drawWindow 法渲染在 HTML5 Canvas 元素上。这种方法的实际表现非常不错,但滚动效果没有 MicroB 那么顺畅。MicroB 的渲染表现页更好——更清晰、更完美。
结论
Firefox 智能手机浏览器的概念在短短几年前还有些难以置信,现在已经非常真实。Maemo 平台的移动版 Firefox 展示出 Firefox 浏览器的灵活性,以及它在有限的计算环境下提供桌面浏览体验的潜力。这是一项了不起的成就,但还只是 Mozilla 实现自己在手持设备领域目标的开始。过几天我们将谈谈 Weave,细看移动版 Firefox 创造的一些创新机遇。