因为iOS开发者只能使用UIWebView引擎技术,iOS Chrome在Javascript性能上比Safari慢3.84倍

新用户6880669282012-06-29
Chrome在非iOS系统中很受欢迎,还记得对于桌面版Chrome最好的评价是:它比其它浏览器都快。但这个评价似乎却不能在iOS上打包票。在iOS上的Chrome比其他平台上的Chrome要慢,它也的确在Javascript性能上,比Safari慢。

今天早上,Google方面宣布
iOS Chrome正式上线。“不要误会,我真的喜欢在iPhone和iPad上的Chrome浏览器,不过这个iOS上的Chrome不是真正的Chrome,它是个更慢的移动Safari浏览器。”这是来自
John Herrman针对iOS上Chrome浏览器的评价。为什么会这么说呢?

我们先从Facebook在iOS上的app开始讲。Facebook在昨天透露说他们终于在做一个真正完全原生的iOS版app了。直到现在,Facebook的app还是以web技术为主,一个蓝色背景的浏览器和手机网站。那为什么突然要做一个原生app呢?实际上这也是Chrome在iOS上会变慢的原因:他们都使用的是一个比Safari技术更慢一些的浏览器引擎。

移动Safari这个在iOS设备中的默认浏览器,使用了一个名为Nitro的Javascript引擎,这其中使用了一个叫“just-in-time”的汇编,可以让脚本执行得更快。技术细节并不是我们想讲的重点。但必须知道的是,just-in-time可以让Nitro更快,而Nitro则让Mobile Safari更快。所以如果在手机上使用Safari,体验会很不错。

但是当其他app如Facebook或者一个实际上就是浏览器的Chrome想在iOS上具有浏览器的功能时,就不能用到Nitro引擎。同时,开发者也不能使用自己的Javascript引擎。出于安全因素的考虑,app开发者只可以用Nitro的变种或者说是Nitro的过气版本——UIWebView。这就是为什么其他浏览器在iOS中都被迫使用UIWebView的原因。

虽然引擎的变化一样可以提供和移动Safari同保真度的结果,但这可能会使得其他浏览器更慢。下面是移动Safari和Facebook的app在Javascript基准中的比较数据:

虽然要载入一个页面不仅仅是执行Javascript,而这个基准完全只是考察Javascript,但Facebook的app单单在这方面的速度就比Safari速度慢了四倍。对于移动应用来说,这会是一个明显的区别,现在的页面,特别是针对移动设备的,会有大量的Javascript需要跑。

在同步历史和书签、使用隐身模式等方面,预取的性能会帮助整体加速。Chrome在非iOS系统中很受欢迎,还记得对于桌面版Chrome最好的评价是:它比其它浏览器都快。但这个评价似乎却不能在iOS上打包票。在iOS上的Chrome比其他平台上的Chrome要慢,它也的确在Javascript上,比Safari慢。媒体们普遍表示iOS的Chrome要比Safari慢,我们也在iPad上对Chrome体验了一下。尽管在Javascript方面可能Chrome会慢些,但在体验中打开网页的整体速度却没有让我们觉得Chrome比Safari慢(Chrome还是很快的)。Google方面也对使用UIWebView引擎这件事做了回应:“我们的目标是想让用户们带来与使用桌面版Chrome和Android版Chrome同样快速、安全和稳定的浏览体验。不过我们也需要接受平台中特别的技术限制,所以我们使用了iOS提供的UIWebView的渲染和javascript引擎技术。”

+1
0

好文章,需要你的鼓励

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

下一篇

你都利用碎片化时间(地铁、公交、开车、走路、起床等场景)做什么?是放空发呆,还是听歌、看电子书、刷微博,抑或是听有声读物?有没有想过用听资讯的办法更好地利用好碎片化时间呢? 由凤凰网创新产品中心出品的音频资讯应用“凤凰电台”刚刚推出了全新的2.0版,相较1.x版,新版最直观的改变就是使用了Metro风格的界面设计,抛弃了原来略显老派的界面。

2012-06-29

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

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

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

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