文/水哥
Flash死了,业界又多了一个值得凭吊的在移动时代倒下的亡灵。
全球第三大软件公司Adobe Systems颁布颁发,旗下Flash
Player计划将于 2020 年停止更新和分发,并鼓励将现有代码移植至其他开放格式。尽管这些年Flash应用一直趋于式微,但Adobe公司关于Flash软件生命周期的官方终止不免让开发者生发一丝悲凉,甚至有开发者请愿让开源社区接受这项技术,以求Flash内容生存于互联网历史。
尽管Flash的终期已经划定,但是其在PC时代的影响力以及为互联网发展所作的贡献不成否定。作为即将有超过 25 年漫长生命周期的软件/技术,这在软件史上并不久不多见,它所创造的传奇与辉煌同样耐人寻味。说到底,Flash在PC时代互联网发展史上创造了一个尺度(交互动画的尺度),其最大的贡献在于,在互联网内容极其匮乏,形式单一的年代,Flash极大丰富了万维网技术的表示形式。令人惋惜的是,尽管万维网的历史进程并未走完,Flash的脚步却戛然而止,是谁杀死了Flash?这颗曾经的巨星又是如何淡出业界舞台的?
先从乔布斯颁发的关于Flash的一封公开信说起。 2010 年,时任苹果CEO史蒂夫•乔布斯在其颁发的一封公开信中列出了苹果决定旗下全线产品不再支持Flash的各种理由。事件在当时引发热议,业界遍及不雅观点有二:其一是乔布斯基于Flash在未来移动时代日渐式微作出的判断和预测;其二是包孕Adobe公司在内的一方认为苹果公司在自家操作系统层级上排斥第三方生态所作的反竞争商业行为。而用乔布斯本身的话说,苹果与Adobe的关系由来已久,二者在创业初期曾数次共度蜜月,之后两家公司因差别经历和专注的领域各异相互少有交集,因而不存在利益上的博弈之说。
信中苹果公司从开放技术演化、自家移动设备的泛用性、Flash的安适可靠性与性能、续航时间、触屏设计几个角度辩驳了来自Adobe的质疑,但在第六点上,乔布斯似乎又承认了沿用Flash技术将可能对苹果移动产品造成影响。原文翻译如下:
“过去沉痛的经历已经让我们意识到,让一个第三方软件插足于开发者和平台之间,只会带来分歧尺度的应用,阻碍平台的改善与发展。如果开发者对第三方的函数库和工具产生依赖,那么唯有在第三方选择加入新功能时,开发者才能体验到和充分利用平台的优越性。我们不能被第三方的决定所摆布。”
由此可见,苹果公司所罗列关于Flash技术的种种不适确实存在,但也从另一个方面反映了Flash以一个插件的身份干着平台该干的事情,而不成制止地卷入了与坐拥操作系统层级资源的业界巨头的商业博弈之中。
与苹果的纠纷只是开始,而类似这种与巨头间发生的“尺度之争”在之后的 7 年里频频上演,这也促成了Adobe公司无力应对转而主动放弃Flash技术的主要原由之一。
苹果亮相的那一年后,Flash在当时仍拥有庞大的商业价值,这使得Adobe不肯立即放弃多年经营的产品。Adobe曾一度加强Flash
IDE工具对移动平台的支持,譬如 2011 年的Adobe Flash CS5.5
Professional对元件Visible功能的改进,增加了对iOS开发者的友好。乔布斯去世后,Adobe与苹果的关系趋于缓和,苹果也重新修改iOS开发人员授权书,Adobe得以继续维护Flash
CS5 之后版本在iPhone/iPad平台上的更新。但是,这对Flash软件生命周期的延长于事无补,Flash与平台商之间的矛盾重心已从商业利益博弈转向无法解决的历史性技术问题。
Flash在PC时代根深蒂固,在 2010 年之前是最好的前端技术之一,Adobe公司曾骄傲地颁布颁发全球97%的网络浏览器都内置了Flash播放器。也正是因为Flash在桌面上过于根深蒂固,以一个插件的身份包揽了过多平台级的工作,能解编码H.264,能进行3D渲染,能播放7. 1 声道环绕声,能支持游戏手柄, 过多的功能祭出了低效(高功耗)的代价,加之IDE工具不停丰富和易于开发,粗劣低效的Flash页面开始在网上蔓延泛滥。
Flash在移动问题上的硬伤可不但仅来自乔布斯的“诅咒”,起初Adobe放弃了“移动系统浏览器中Flash
Player插件的支持”有其自身的考量。特别是安卓系统这种运行Java虚拟机的机制对低功耗有着特别要求,开发者也对Flash在移动端较高的开发成本以及高功耗的缺点产生排斥。加上移动时代大量开发者从桌面向智能手持平台转移,开发者世界的风向发生了变天,扎根于桌面浏览器的Flash想要维系过去的价值变得难以为继。