北漂IT民工 的博客

乔布斯:关于 Flash 的思考

苹果与 Adobe 的关系由来已久。Adobe 的创始人还在那如今已成传说的车库中工作时,我们就已经认识了。苹果是他们的第一个大客户,将他们的 Postscript 语言改为我们当时新推出的 Laserwriter 打印机所用。在很多年里,苹果都是 Adobe 的股东之一,拥有其 20% 的股权。两家公司通力合作,开创了桌面电脑出版业,其中有不少快乐的时光,但那段黄金时代一过,我们便分道扬镳了。苹果经历了濒死的过程,Adobe 凭其 Acrobat 产品进入了企业市场。今天,两家公司仍然同心协力为创意产业的客户服务——Adobe 的 Creative Suite 软件的顾客里,有大约一半是苹果电脑用家。但除此之外,我们几乎没有别的共同利益了。




我想草草写点关于我对Adobe Flash技术的看法,方便客户和批评者更好地理解为什么我们在iPhone、iPad和iPad上封杀它。Adobe曾经说,我们主要是为了保护程序应 用商店产品,出发点也是为了业务缘故,但实际上却是因为技术原因。Adobe声称我们是一个封闭的系统,而Flash是开放的,但实际截然相反。让我来解 释一下。


首先是“开放”。


Adobe Flash技术是100%拥有专利的,这些专利为Adobe独享,而Adobe也对其未来发展、价格等拥有绝对控制权。尽管Adobe Flash技术广泛流行,这并不意味着它是开放的,因为它完全被Adobe控制,也只为Adobe而存在。无论从哪个方面来看,Flash技术都是一个封 闭的系统。


当然,苹果也拥有许多专利性产品。虽然iPhone系统、iPod和iPad都是有专利的,便我们依然坚信:所有与网络相关的标准应该开放。因 此苹果放弃Flash而选择HTML5, CSS和JavaScript等开放标准。苹果的移动设备使用这些标准后都具有高性能、低功耗特点。HTML5这个新的网络标准已经被苹果、Google 及其它企业采纳,它让开发者可以开发出更好的图形、印刷及动画,不需要第三方浏览器插件(如Flash)就能转换。HTML5是完全开放的,它由一个标准 委员会打理,当然,苹果也是一个成员。


苹果甚至还为网络制定开放标准。例如,苹果从一个开源的项目做起,打造了WebKit,它是一个完全开源的HTML5渲染引擎,它也是 Safari浏览器的核心,这个浏览器使用于我们所有的产品。WebKit已经被广泛接受。Google将它用于Android浏览器,Palm也用它, 诺基亚也用它,最近RIM也宣布将使用它。除了微软外,几乎所有的智能手机浏览器都用它。为了使WebKit技术更开放,苹果已经将它做为移动浏览器的标 准。


第二点,关于“整个网络”。


Adobe不断地说苹果的设备无法连接“整个网络”,因为75%的网络视频使用Flash。它们没有提及的一点是几乎所有的视频都有另一种格式 ——H.264,iPhone、iPod和iPad支持这种格式。Youtube估计占有40%的网络视频,苹果的移动设备都绑有应用,而iPad更是提 供了最佳浏览体验。除了Youtube,如Vimeo,Netflix,Facebook,ABC, CBS, CNN,MSNBC,福克斯新闻,ESPN,NPR,《时代》,《纽约时报》,《华尔街日报》,《体育画报》, 《人物》, 《国家地理》, 很多很多其它的公司都能支持,iPhone、iPod和iPad用户没有损失多少视频。


Adobe的另一个理由是苹果的设备无法玩Flash游戏。这可能是真的。比较幸运的是在苹果的应用商店里有5万个游戏与娱乐应用,当中许多还 是免费的。iPhone、iPod和iPad的游戏会越来越多,远非其它平台可媲美。


第三点,关于可靠性,安全性和性能。


赛门铁克最近指出,Flash在2009年创了安全记录之最。我们也有第一手资料,显示Flash是导致Mac死机的原因之一。我们曾与 Adobe合作,试图解决此问题,但它们还是坚持多年不变。我们不想为了Flash,降低iPhone、iPods和iPads的可靠性和安全性。


此外,Flash在移动设备上并不能完好运行。按照惯例,我们数年来一直要求Adobe能将Flash良好运行于移动设备上——任何移动设备。 但依然无所进展。Adobe曾公开表示,Flash支持所有2009年早期推出的智能手机,然后是2009年下半年推出的手机,然后又是2010年上半年 推出的手机,现在,它们又要说2010年下半年了。我想它们最终会推出新品,可以庆幸的是我们不用耐心等待了。谁知道它的表现会如何呢?


第四点,续航时间


在播放视频时,为了使电池续航时间延长,移动设备必须在硬件上进行解码,如果用软件解码会耗费更多的电力。现在的移动设备都包括一个解码器,叫 作H.264,它是一个工业标准,用于所有的蓝光DVD播放器,这个标准被苹果、Google,Vimeo,Netflix及其它许多企业接受。


虽然Flash最近也将H.264列入支持行列,但是如今几乎所有的Flash网页都需要老一代的解码器,它无法在移动芯片上执行,所以只好求 助于软件。区别十分惊人:举个例子,在iPhone上H.264视频可以播放十小时,而用软件解码只能播放不到五小时。


当网页使用H.264对视频再编码时,它完全可以不使用Flash技术。而且它们可以良好运行于苹果Safari、Google Chrome浏览器上,完全不需要插件,在iPhone、iPod和iPad上效果不错。


第五点,与触摸屏有关。


Flash是为电脑和鼠标设计的,而不是手指控制的触摸屏。例如,许多的Flash网页上有“翻转”功能,当鼠标移到上面时会弹出一个菜单或者 其它元素。苹果的革命性多触点触摸界面不使用鼠标,也没有“翻转”这种概念。许多的Flash网页为了支持触摸设备需要再编写。如果开发者需要重写网页, 为什么不使用更先进的技术HTML5、CSS或者JavaScript?


即使iPhones,iPods和iPads能运行Flash,也无法解决这个问题,大多的Flash网站为了支持触摸设备还是要重写代码。


第六点,也是最重要的一点。


撇开Flash封闭而独断、技术缺点明显且不支持触摸设备等不论,还有一个重要的原因使我们不支持它。我们曾讨论过网站使用Flash播放视频 与互动内容的下降趋势,然而Adobe还是要求开发者接受Flash,开发应用并在我们的设备上使用。


我们深知伤害体验,让第三方插足平台和开发者之间,最终会制造出低标准应用,它会阻碍平台的扩张和进展。如果开发者越来越依赖第三方开发的函数 库和工具,那么唯有在第三方选择新功能时,开发者才能享受到平台优越性。我们不能让第三方支配,不能第三方让开发者开发什么,才能开发什么。


更糟糕的是一旦第三方提供一个交叉平台开发工具,它们可能不会为单一的平台开发增加工具,除非工具能适应于所有平台。如此一来,以后开发者就只 能开发最低标准的应用。再次重申,禁锢开发者,使之不能使用我们的创新和增强产品,这是我们无法接受的结果,因为他们没有到竞争对手的平台去。


Flash是一个交叉平台开发工具。让开发为iPhone、iPod和iPad开发出最好的应用,这并非Adobe的目标。让他们为交叉平台开 发才是其目标,而且Adobe在增加苹果平台应用方面十分迟钝。例如,尽管Mac OS X已经推出近10年,Adobe直到两周前才完全接受,推出了CS5。Adobe是最后一个完全接受Mac OS X的第三方开发商。


我们的动机十分简单:我们希望为开发者提供最先进、最创新的平台,我们希望他们直接站在苹果平台的肩上,打造全世界最好的应用。我们希望不断增 强平台,让开发者创造出更让振奋人心、更强大、更有趣、更有用的应用。要多方共赢,我们卖出更多的设备,因为我们拥有最好的应用,开发者越来越拥有更广泛 的用户基础,用户也可以更开心地选择,选择的面也更宽。


总之,Flash适用于PC时代,为PC与鼠标而存在。对于Adobe来说Flash是个成功的业务,我们理解它为何希望能超越PC。但移动设 备关乎低功耗,触摸界面及开发网络标准,这些是Flash的短板。


媒体雪崩,出路在于它们向苹果移动设备提供内容,这证明Flash不再是观看视频之必备,也非其它许多网站的必需。苹果应用商店的20万个应用 也证明Flash不是成千上万开发者的必需品,没有它同样可以创造更好的、更丰富的应用,包括游戏。


移动时代的新开发标准,如HTML5,将在移动设备上获胜(电脑也将一样)。也许Adobe应该集中精力,为未来打造HTML5工具,而不是成 天批评苹果放弃过时的事物。


史蒂夫·乔布斯


2010年4月


英文原文链接:Thoughts on Flash