李斑子
最终,谷歌还是选择了与Flash诀别,宣布在9月份新推出的Chrome浏览器中将HTML5内容设置为优先支持对象,屏蔽网页中的Flash内容,如果用户仍要加载相关内容,只能通过主动点击加载来激活Flash插件。
与其说这是一次落井下石的“封杀”,还不如说谷歌正试图表明自己转身拥抱HTML5的决心。看着如今的“反目”,大概没谁能想起2010年的那个春天乔布斯炮轰Flash时谷歌仍站出来说会继续拥护Flash,并努力帮助它变得更好。就像如今围观群众看着Flash遭受墙倒众人推的晚年,大概没几个人能想起十几年前,几乎所有网民都受过它的恩惠。
上世纪末本世纪初,连接互联网的宽带还是很“窄”的时候,上网冲浪的网民能浏览的大多只是文字加图片凌乱地堆砌在一起的静态网页。那时网页上能动的元素除了GIF图片,还是GIF图片,就是今天主宰聊天界面的表情包。网民们接触多媒体的主要矛盾还是极大的视频文件和糟糕的网速之间的矛盾,还要忍受其耗能的视频插件(比如Real Player)和糟糕的画质。
与此同时,还在读高中的天才程序员乔纳森·盖伊正试图通过计算机编程让电脑屏幕里的图像动起来,后来他成功编写出FutureSplash动画,还顺便成立了Future Wave公司,制作了几个同时具有声音和平滑动画的小游戏(比如《空降兵》和《黑暗城堡》),赚了一大笔钱。
1996年11月,Future Wave公司正式卖给MM公司(Macromedia,集网上出版、多媒体开发、图形图像处理、远程视频、多平台发布等技术于一身的软件巨头),乔纳森·盖伊FutureSplash动画也改名为Flash2.0。在巨头的加持下,Flash迅速地让互联网动了起来。在那个网速还是以K为单位计算的年代,小而美的Flash动画在互联网上(通过播放器插件,Flash player)可以边看边下载,放大还不失真,还能还在动画中支持简单的人机交互……这么逆天的技术,想不火都难。
后来,大量Flash动画、Flash游戏应运而生,充斥着整个互联网,当然还包括我们最讨厌的Flash广告。
2002年,MM公司给Flash加入了视频播放的能力,让嵌入了视频的Flash影音文件都可以在Flash播放器上流畅播放。两年后,MM公司开始把视频单独作为一种文件格式提出来,这就是大名鼎鼎的FLV格式。当时Flash播放器的装机率已经超过95%,打下了坚实的群众基础,同时宽带也没有那么窄了,所以FLV也火了,所以就有了YouTube、土豆、优酷等一大批网民们喜闻乐见的视频动画网站,而这些网站初期无一不是使用FLV+Flash播放器插件模式。
至此,Flash终于坐稳了互联网多媒体的头把交椅,而且放眼望去也找不到对手。到了2005年,我们耳熟能详的Adobe公司以34亿美元的天价收购MM公司,其中一个主要目的就是将Flash收归旗下。
但是,以专有软件模式发展起来的Flash,同样因为专有软件而开始遭人诟病。在Flash如日中天的时候,就有很多巨头不爽了,毕竟成为统治者的是Adobe公司Flash,而不是巨头们自己的软件或者硬件,但是为了挣钱,又不得不和Adobe公司一起好好建设互联网。不过这也不妨碍他们私下搞一些小动作,比如以苹果、Opera、Mozilla为首的WHATWG联盟就在2004年提出新一代HTML语言(HTML5),企图打破Flash的统治格局。
在HTML5之前,HTML作为一种编程语言(超文本标记语言,HyperText Markup Language)是专门用来编写静态网站页面的,而 Flash 是 Adobe公司的一个浏览器插件,专门用来播放视频动画的,两者本无冲突。但是HTML5在其语言体系中添加了“canvas(画布)”和“video(视频)”标签,被标记在“canvas”内的元素(比如动画)和被标记在“video”内的元素(视频或音频)将会在用户浏览网页时自动加载,直接点击便可以播放,不用加载任何插件。
基于Flash制作的网页游戏曾风靡互联网
如果把浏览网页比作进入一间房间,在Flash时代,要想在房间内看电视,你得安装一台电视机(加载视频插件),如果这个房间内还有其他影片,你还得为他们安装更加多的电视机。但是在HTML5时代,你不需要自带电视机了,因为现在房间的墙壁有了播放影片的功能。这要放在十几年前是不敢想象的,因为当时的图形处理器并不具备(或者说不能很好地)解析、播放视频的功能,这些事情只能通过视频插件调用CPU的资源来做。
很显然,这已经威胁到了Flash在视频播放插件方面的生存根基。同时,编程人员还可以通过“canvas”标签编写动画,这也威胁到Flash动画制作方面的统治地位,要知道在早些年,不会制作Flash动画的网页设计人员基本和咸鱼没什么区别。
但是,这些并不是Flash由盛转衰的主要原因。因为就基于Flash的动画和游戏制作来说,Adobe公司经过多年的发展,已经拥有一套完善、方便、友好的方案供制作人员使用,这方面的优势远非年轻的HTML5能比。而Flash视频播放插件饱遭诟病的能耗问题也可以像HTML5一样调用图形处理器的相关功能来实现节能,而这,Adobe公司早在2010年就做到了。
同样也是2010年,乔布斯带着他极力倡导并日渐发展成熟的HTML5,终于和Adobe公司的Flash撕破了脸。乔布斯的理由很简单,Adobe Flash技术是100%拥有专利的,这些专利为Adobe公司独享,而Adobe公司也对其未来发展、价格等拥有绝对控制权,所以Flash出现的所有问题(安全、能耗)都只能等待Adobe公司去解决,这对于用户来说是一种伤害。而HTML5是开源的,程序出现问题时所有的技术人员都能根据标准来及时维护。他还指出Adobe Flash技术在安全和性能上有诸多缺陷,表示这些都是他在苹果的iPhone、iPad和iPod等移动设备上封杀Flash的原因,毕竟低能耗、高效率和安全是移动设备一直以来的追求。
早在2007年苹果发布iPhone时,iOS系统就不支持Flash。当时,用苹果的移动设备访问需要Flash视频播放插件才能播放视频的网页时,在视频播放的位置只能看到一片空白。而当时依然非常流行的Flash游戏更是与iPhone、iPad用户无缘,乔布斯对此表示无所谓,苹果商店里的游戏完全可以满足广大用户的游戏人生。乔布斯之所以有这样的底气,源于2007年万维网联盟(W3C)对HTML5的接纳,并承诺努力让HTML5标准尽快定稿(原计划在2022年定稿的HTML5标准最后在2014年10月定稿)。
乔布斯才是Flash由盛转衰的真正推手,iPhone手机从一开始就拒绝Flash
随后,移动互联网的浪潮迅速卷席全球,丢失了大客户苹果的Adobe公司(苹果是Adobe公司的第一个大客户,甚至曾经持有Adobe公司20%的股份)也没能把握住剩下的安卓阵营。在世人的眼中,Adobe Flash是不思进取的,因为它始终没有针对移动设备做到很好的优化,甚至在本来占据统治地位的PC端也是漏洞百出,体验越来越差——这些年来Adobe推出的Flash视频播放插件的补丁不计其数,光2015年就有361个,几乎做到了全年无休。
但更有一种可能,是Adobe公司已经认清现实,未来的互联网发展趋向低能耗和高效率,Flash作为一个附加产物已经没有生存空间了——曾经它能做的,现在网页自己都能做到了。Adobe作为一家公司是追求商业价值的,没有那么多英雄气短,不合时宜的东西就不应该继续占用更多的资源,不管它曾经有多辉煌。
所以后来,在越来越多浏览器和互联网公司抛弃Flash时,Adobe公司也不做更多挣扎了,2015年12月,Adobe公司合并Flash与HTML5制作软件,更名Animate CC,建议开发人员更多地使用HTML5,迈出了拥抱HTML5的重要一步。
现在,谷歌宣布全面封杀Flash这一举动,相当于给Flash的棺材钉上了最后一颗钉子。大局已定,Flash再见,你好HTML5。