誠然,Flash有過極為輝煌的時代,當Adobe于2005年收購Flash時,這項技術被應用于98%的個人電腦上。但另一方面,Flash也的確由于技術問題和跟不上時代潮流而逐漸衰頹。
作為最大名鼎鼎的網絡多媒體技術之一,Flash的名號可謂是無人不知無人不曉。然而,觸手曾伸及形形色色網站的Flash,現在終于要退出歷史的舞臺。Adobe已經宣布,Flash將會在2020年停止開發和更新,這意味著Flash已經徹底走向淘汰。盛極一時的Flash,是如何被人拋棄的?明明是Flash先來的,玩小游戲也好,看視頻也好,實現各種復雜的交互也好,但為什么Flash會被HTML5取而代之?今天,就一起來談談關于Flash的話題吧。
看到Flash這個詞,莫名會產生一種年代感,腦中會浮現出諸般動畫模式。盡管Flash如今依然存在,但也不剩多少時間了。據BBC消息,Adobe Systems公司表示,會在2020年底逐步淘汰Flash播放器插件。
說到此處,不免有幾分凄涼之感。記得Flash當初興起之時,是極為風光的。尤其是從新世紀之初到2008年,屬發展的黃金階段。PC時代,Flash動畫在互聯網中著實火爆。然而,隨著移動端時代到來,H5崛起,Flash走向沒落。蘋果、微軟等巨頭皆明確表示過不接受Flash插件在產品中登陸。
Flash當初為何興起?為何衰落?又為何遭遇移動設備廠商的“嫌棄”?分析Flash從興起到衰退的過程,能夠對這些問題有更加深切的解讀,能夠窺見移動端時代Flash不能適應的原因,并可能對類似的功能和插件起到一些參考作用。
?
Flash:曾是互聯網世界的超級英雄
Flash在今天給人的印象是臃腫而又低效的,但在Flash剛剛誕生的時候,卻被視作是互聯網世界的超級英雄。Flash誕生自1996年,當時的Flash可是網絡上冉冉升起的超新星——小巧、高效、跨平臺,無論是開發者還是用戶,看到Flash都會笑逐顏開。
在上世紀末本世紀初,互聯網的世界是單調的。別看現在的網頁和瀏覽器干啥都行,但在Web1.0的年代,HTML平臺能做的事情極其有限——網頁多只是簡陋的文字排版,圖片往往是馬賽克級別的分辨率,能動起來的GIF圖片,動不動數M的體積,對于當時流行的撥號上網來說,可謂是一圖殺貓的存在。此情此景下,Flash儼然成為了令人嘖嘖稱奇的魔法。
Flash是二維動畫軟件、交互矢量圖與Web動畫標準。網頁設計者可籍此創造出既優美又能夠改變尺寸的導航界面以及動畫效果。在PC時代,HTML語言的功能限制度高,達不到人們預期的、使人耳目一新的動態效果。
因此,各類腳本語言應運而生,為的是使網頁設計更加多樣化。然而,程序設計卻總是不能夠非常好地得到普及,因為它對使用者的編程能力有一定的要求,故而人們還需要一種簡單的、直觀的、功能更為強大的動畫設計工具,而Flash的出現恰好滿足了此需求。
從1999年~2001年,可算得上是Flash插件的培育期,在2001年~2008年期間,可謂Flash的黃金發展期。那么在那段時間中,Flash都經歷了什么呢?
2001年左右,互聯網上主要的動畫表現形式是GIF。若要基于瀏覽器看視頻,必須要裝Media Player插件或者Real Player插件等等。在那個PC端還尚未普及的年代,只要是能動起來的東西,管它是動畫還是視頻,總能吸引人的眼球。
所以,這就給Flash的火爆提供了一個很好的土壤,幾百KB或MB的小文件就能有那么精美的畫面,而且基于其矢量效果,放大后也不會失真,并且支持邊下邊播,還能交互著正看重看倒看,并能點個“開始播放”之類的。
所以說,在那個網速以K為單位的年代,Flash堪稱業界良心。彼時在互聯網中,能流暢播放的、并且能大段的動起來的,也就只有Flash了。這很難不吸引用戶的注意力,也涌現出不少Flash爆款動畫,如大話三國、火柴人格斗、東北人都是活雷鋒等諸多MV二次制作。可以說,在當時的背景之下,Flash的火爆是必然的。
Flash締造過很多經典小游戲,例如火柴人
單調的網頁一旦使用了Flash,面貌往往會煥然一新。Flash能夠用僅僅十幾K到幾百K的體積,呈現出放大也不會失真的矢量彩色動圖,甚至還能夠做出足以令人沉迷一整天的Flash小游戲。Flash一度成為了互聯網中最耀目的多媒體技術,是否使用了Flash,甚至成為了人們來衡量一個網站先進與否的標準。
Flash的大展拳腳,離不開它的準確定位——HTML平臺不行,那Flash自己就來做平臺。Flash用插件的身份,干著平臺才需要負擔的繁重工作。在Adobe豐盈的奶水的滋潤下,Flash茁壯成長。Flash先后加入了對Javascrip、HTML、XML的支持,新增了濾鏡和層的模式,加持了Actionscript語言,并增強了影音方面的功能一舉把RM/RMVB趕到了線下。加上Flash跨平臺的特性,極其容易移植,因此Flash很快就在互聯網上打出了一片天地。
Flash在互聯網中曾經的盛況都是有目共睹的,便不再贅述,單從Flash走下坡路之時開始說起。2004年,Flash Player 7開始將視頻單獨作為文件格式提出,即為著名的FLV格式。
此格式甫一出現,即引爆流媒體視頻行業,彼時Flash播放器裝機率已然超過95%。此后,Adobe一直改善FLV格式,視頻編碼從Sorenson Spark到On VP6再到H.264,音頻編碼則從MP3到AAC,格式從FLV到MP4……此種修改使得FLV這種小眾的視頻格式成為主流。
此后,各類視頻網站逐步興起,并且網絡帶寬飛速發展。在這種背景下,Flash MV逐漸被人所遺忘。
Flash的支持一度相當廣泛
Flash最為鼎盛的時候,市面上稍微高端點的設備,支持Flash被視作是理所當然的事情。看看那些即便乖乖給Adobe授權費也要抱住Flash大腿的設備吧——黑莓、PS3、PSP、Wii、PocketPC、Windows Mobile、塞班……哪個不是一方英雄,哪個不是一時豪杰?但是,這些大佬們也不得不對Flash敬重三分。不過,終于還是出現了對Flash說“不”的人——蘋果。
Flash為何走向淘汰?
隨著iPhone的流行,Flash在移動市場迅速衰退。2007年出現的iPhone一開始就不支持Flash,當時正值Flash的頂峰。很多人起初對蘋果這一決定嗤之以鼻,但最后發覺原來增加續航的最好方法不是增大電池,而是拋棄Flash。于是,Android也在2012年宣布不再支持Flash,Flash在移動市場不再有立足之地。
Flash在移動平臺的衰敗最后波及到了桌面市場。Chrome從去年的Chrome 42開始,就已經強制把Flash裝入沙箱,以PPAPI的形式運行;在今年推出的Chrome 55中,更是默認禁止Flash運行。Chrome的前輩Firefox更加激進,去年就已經默認禁止Flash運行了。微軟的Edge瀏覽器是對Flash支持得比較好的,但也宣布將會在Win10 RS2新版中默認禁止Flash。1996年誕生的Flash用了10年攀上頂峰,然后走了10年下坡路;3年后的2020年,Flash將會走到生命的終點。
很多瀏覽器都已經默認禁用Flash,或者是舊版Flash
上文提到,Flash以插件的身份,做著平臺該做的事情,功能非常強大。為何如此強大、如此流行的Flash會走向衰落?原因大致如下。
首先,Flash效率變低了。隨著功能的增多,Flash的效率明顯變低。現在的Flash,能解碼編碼H.264,能進行3D渲染,能播放7.1聲道環繞聲,能支持游戲手柄……林林總總的功能集于一身,加上易于開發,粗劣低效的Flash不斷在網絡泛濫。
Flash已經變得太過臃腫低效
Flash的功能越來越強大,開發人員使用Flash開發的產品也愈發繁多龐雜,Flash開始被用來干一些奇怪的事情,比如說賣賣小廣告啦,玩玩小游戲啦——這些應用多是粗制濫造,很難想象有人會為Flash廣告優化代碼,是吧。人們慢慢發現,當低劣的Flash充斥著網頁的時候,電腦開始不堪重負了,Flash落下了一個烤肉機驅動程序的稱號。
毫無疑問,貼滿了低效Flash的頁面是非常不適合移動互聯網的,沒有什么設備的電量能經受住Flash的拷問,這令Flash迅速被移動平臺所摒棄。自然而然,Flash也就淡出了這個移動為王的時代。
其次,Flash非常不安全。Flash以一個插件的身份,干著平臺干的事情,所導致的后果就是承受了平臺級別的風險。君不見多少個0Day漏洞自Flash而出,例如在2015年,安全機構NTT Group公布的十大最危險的漏洞就全部出自Flash。Flash能夠運行相當復雜的代碼,這讓Flash非常容易被滲透。加上Adobe在安全方面的不上心,這令Flash安全問題頻發。
這是NTT Group在2015年公布的各大軟件漏洞情況,可見Flash一覽眾山小
Flash支持多個平臺,這令它帶來的安全問題影響更加嚴重。一旦Flash出現安全問題,N種瀏覽器、操作系統都有可能被攻陷。在移動互聯網時代,設備承擔了越來越多的隱私數據,沒人希望隱私從滿是漏洞的Flash中泄漏出去。因此,Flash遭到了冷落。
再者,Flash很不穩定。作為一個插件,它自身頻頻崩潰也就罷了,還經常拉著瀏覽器乃至操作系統一起殉情。光是播放視頻,Flash就能給你弄出藍屏事件,往往不得不關閉Flash的硬件加速提升穩定性。
最后,Flash已經有了替代品——HTML5。Flash之所以得以流行,是因為當時的網頁實現不了什么功能,需要Flash這樣的插件充當救火隊員。現在,HTML5已經基本上能包辦Flash所有能干的事情了。無論是視頻播放,還是小游戲,使用HTML5都可以輕松實現。同時,HTML5對比Flash的效率更高,安全性更好,不需要另外安裝插件也可以在各大平臺運行,對不同設備的支持要比Flash更加友好。
在移動端時代,巨頭們“嫌棄”Flash的原因,需要從多角度加以分析。
第一,商業利益。
作為企業,最為直接的目的便是盈利,喬布斯深知這一點。在iOS中,數量最為龐大的應用便是游戲。而用Flash開發游戲既便捷又迅速,效果還好,其開發效率遠超XCode。不過從另一方面來看,如果Flash流行,用戶就能通過網頁直接進行訪問,那么移動設備的應用商店就不好賺錢了。
移動設備系統小巧,且封閉性較強,因而廠商通過清理門戶獲得控制力的舉動無可避免。實際上,原生態的計算機設備系統都形成了閉環,如任天堂的FC、Wii,索尼PS系列、XBOX系列,全球范圍內第一臺個人電腦Apple,無一不是封閉系統,iOS和WP應用商店也只是借鑒了此種模式。
第二,用戶體驗。
在PC時代,許多人安裝軟件都從網頁中搜索,不過也有許多人習慣通過各種軟件管家進行安裝。而在移動端時代,閉環系統中在應用商店安裝軟件更加方便。因此,Flash并非主流,所以用戶不會在體驗上有太大的差別。而且應用商店中資源更為豐富,用戶不會對此太過在意。
第三,巨頭暗戰。
微軟在早期IE中內置了Flash,不過后來就消失了。微軟自己想做插件,但國外的專利和版權法非常嚴苛,一般不會抄襲,所以這樣一來山寨的就比不上原創的了。而到了移動端時代,微軟也借鑒了蘋果的做法,光明正大地封殺了Flash。
第四,Flash的地位。
需要承認的是,Flash是世界上最方便的動畫工具、矢量工具、結合矢量位圖動畫的編程工具。然而Flash卻從未成為過現象級工具,在專業領域,有大量的產品可以替代Flash。相對而言,Flash雖然高效,但卻更為大眾化。而大批低效但更專業的工具才是動畫片制作、游戲開發、圖形設計等領域中的主流。
其實,Flash就如同調節劑,可以撐得住小場面,但在更專業的工具面前就敗下陣來。何況在移動端時代,我們早就對動畫不感冒,而被視頻吸引了。
無論怎樣,Flash確實已經呈現蕭索之態。就連Adobe的產品開發副總裁Govind Balakrishnan也表示:“公司已經選擇關閉Flash,因為其他技術(如HTML5)已經足夠成熟,足以提供Flash播放器可行的替代品”。不過他同時也說:“在互聯網時代,很少有技術能產生如此深遠而積極的影響。”
誠然,Flash有過極為輝煌的時代,當Adobe于2005年收購Flash時,這項技術被應用于98%的個人電腦上。但另一方面,Flash也的確由于技術問題和跟不上時代潮流而逐漸衰頹。以發展的眼光來看,Flash被淘汰也是必然會出現的結果。
連Flash的親爸爸Adobe都力頂HTML5,在Animate CC中加入HTML5支持了
另外,作為一款商業軟件,Flash并不符合互聯網的開放精神,起碼就不如大家一起來運營的HTML5來得符合。在之前,HTML5標準的制定一片混亂,WHATWG和W3C為了爭奪HTML5標準的話語權,內斗不已。現在一切塵埃落定,HTML5標準已經出爐,業界再也沒有什么理由觀望而不跟進。甚至Adobe也宣布,Flash的開發工具Flash Builder更名為Adobe Animate CC,加入對HTML5的支持。爸爸都不愛你了,Flash還是乖乖睡進歷史書吧。
總結
簡而言之,Flash的興起和衰落,不僅僅是因為本身的墮落,還要考慮歷史的進程。歷史的進程已經欽點了HTML5做接班人,你問我支不支持HTML5?反正業界都支持,微軟、蘋果、Google乃至Adobe都在力推HTML5。Flash被徹底淘汰的2020年并不遠,但目前國內仍有不少視頻站使用Flash,希望國內視頻站能盡快轉用HTML5,給用戶帶來更好的體驗吧。
評論