從興起到衰亡,Flash的前生今世
近日,Adobe 公布了 Flash 播放器的更新版本,主要目的是提供漏洞補丁。 Flash 長期以來存在的一個漏洞,可以導致黑客對 Mac 或其他 PC 發動遠程攻擊,把惡意程序在用戶沒有意識到的情況下將軟件下載到用戶的計算機,威脅用戶的安全。由于該漏洞正被黑客利用且處于活躍狀態,Adobe 敦促用戶盡快升級。
我已經記不清這是 Flash 多少次爆出安全漏洞了,只是記得這種更新隔一段時間就會來一次,而 Flash 本身還有多大價值在 HTML5 時代也一再被質疑。曾幾何時,Flash 是互聯網時代的寵兒,閃客是一個很炫很新潮的名詞,而如今已經無人提起。
興起,互聯網的低速時代
在 2000 年前后,雖然互聯網已經開始了普及,但是當時的互聯網還是靜態的。
因為帶寬的限制(當年主流撥號是 56K 的 modem,有個 128K 的 ISDN 就算是土豪了),當年的互聯網以文字為主,圖片也要注意尺寸,打開大點的圖片就要等上一段時間,下載一首 MP3 需要十多分鐘甚至二十分鐘。
至于視頻,看一段清晰度很差的視頻等上 20 分鐘有沒有?得先安裝一個微軟的 MediaPlayer 插件有沒有?
正是在這樣的背景的,Flash 開始異軍突起,因為 Flash 是矢量動畫,一個好處是空間占用小,還有一個好處是可以無限放大不失真。這對當年有限的上網帶寬來說太重要了。
空間占用小,意味著用戶打開快,意味著可以在互聯網上動起來,而當年的 GIF 動畫要動起來每一幀都是流量啊!可以無限放大,意味著用戶可以看到清晰的動畫,而不用忍受 GIF 為了體積而縮小、減色(真彩色縮減為 256 色)。
于是 Flash 就火了起來,幾乎每臺電腦都要安裝 Flash 插件。而網站也找到了好的廣告載體,當年的互聯網本來就靠廣告生存,體積小效果炫的 Flash 天生就是給廣告準備的,于是任何一個網站都是大面積的 Flash 廣告欄。Flash 正式興起,閃客成為時尚。
高潮,視頻帶來的機遇
當然,互聯網的帶寬不會一直窄下去,不久之后就有了寬帶。而 Flash 也沒有固步自封。
Flash MX (Flash Player 6) 開始,Macromedia 給 Flash 加入了支持播放視頻的能力。當時可以在 SWF 格式的文件中嵌入視頻數據,依然支持流播放。
然后 Flash MX 2004(Flash Player 7) 開始把視頻單獨作為一種文件格式提出來,這就是大名鼎鼎的 FLV 格式。
FLV 這種視頻格式的出現引爆了視頻流媒體整個行業。因為那時 Flash 播放器的裝機率已經超過 95%,用 Flash 做一個幾十 KB 的小播放器,然后用這個小播放器來流式播放 FLV 視頻文件,做一個視頻點播網站不是妥妥的么!油Tube、優酷、土豆借此先后興起。
對用戶來說,經常要為了看網絡視頻安裝各種視頻插件,有視頻媒體公司的(Realwork),有操作系統公司的(微軟著名難用的 Mediaplayer),而有了 Flash 以后,什么優酷、土豆的視頻全部能看啊。
隨著 Flash 交互技術的進步,各種 Flash 的網頁游戲興起,很大程度替代了以前的安裝版小游戲,打開網頁就能玩游戲成為當時很多人的娛樂方式。
于是,在一段時間內,Flash 達到巔峰,似乎整個互聯網離不開 Flash。
危機,移動趨勢和喬布斯的吐槽
如果 PC 時代一直這樣發展下去,也許 Flash 也會繼續興盛,而不幸的是移動時代來了。
2007 年,蘋果發布了 iPhone;
2008 年 3 月針對 iPhone 的 SDK 提供免費下載;
2008 年 7 月 11 日,APP Store 正式上線;
2008 年 9 月,谷歌正式發布了 Android 1.0 系統。
在這個新的時代,雖然用戶們強烈呼吁蘋果支持當時還在互聯網世界處于統治地位的 Flash,但是準備自己管理內容向用戶收費的喬布斯不為所動,之后就是那封著名的公開信。
在公開信中,喬布斯列舉了 Flash 的五大問題
第一個問題是“開放”。喬布斯提醒用戶,Adobe 的 Flash 產品擁有 100% 技術專利。只有通過 Adobe 才能購買這些產品,同時只有 Adobe 有權利對其進行改進、定價等等。盡管 Flash 無處不在,但是卻控制在 Adobe 手里,潛臺詞是說蘋果的控制權不能被另外一個公司所掌控,所以蘋果不能支持。
第二點問題是可靠性、安全性和性能。喬布斯指責 Flash 的安全記錄在 2009 年名列倒數(這倒是真得,我們在文章之初的引子就是 Flash 的安全性問題)。性能不佳,可靠性不足造成 MAC 死機。
第三個是續航,說 Flash 的H.264 的軟解消耗了更多的電量,影響移動設備的續航。
第四個是觸摸屏幕支持,說 Flash 當初是針對鼠標開發,對觸摸屏操控優化不足。
第五個則是真正的關鍵——生態,Flash 可以繞開蘋果公司,讓開發者針對蘋果設備開發應用,這意味著蘋果的應用和內容收費“自留地”不再是用戶唯一的選擇,這是原則性問題,無從妥協。
最后,喬布斯提到了 HTML5,說 Flash 已經過時。
由于蘋果當時已經具有非常高的地位,喬布斯的公開信對 Flash 的打擊幾乎是致命性的。從此以后 Flash 開始不再將移動領域作為重點,而這幾年的趨勢是移動領域快速增長,PC 萎縮,Flash 也就逐漸邊緣化了。
替代,HTML5 的興起
雖然互聯網巨頭各家有各家的利益,但是大家還是希望有一個標準化的東西。自 1999 年 12 月發布的 HTML4.01 后,后繼的 HTML5 和其它標準被束之高閣。
HTML5 一直沒有出現,業界沒有一個統一的標準,而互聯網又一日千里的發展,這才造成了 Flash 的興起。而從 2004 年開始,人們就在為 HTML5 而努力。
在 HTML5 中,Flash 幾乎所有的功能都可以實現,而與 Flash 不同的是,HTML5 是一個開放的標準,而 Flash 是 Adobe 公司的。
無論是蘋果,還是谷歌、微軟(微軟當年還搞了 Silverlight )都不希望被一家公司所左右,它們更喜歡一個門戶開放的東西。
其實在初期,Flash 身上的毛病 HTML5 同樣存在,甚至更嚴重(在對比測試中性能更差,能耗更高),但是這不耽誤業界對 HTML5 的支持。當微軟、蘋果、谷歌三大巨頭的瀏覽器都支持 HTML5 的時候,這個標準事實上就建立起來了。
隨之,各個網站都開始從 Flash 轉向 HTML5,Flash 也不僅僅是在移動市場沒落的問題,而是全面走向邊緣化。
2014 年 10 月 29 日,萬維網聯盟宣布,經過 8 年的艱辛努力,HTML5 標準規范終于最終制定完成了,并公開發布。HTML5 正式成為標準,Flash 因為歷史的兼容性問題(很多人還在用不支持 HTML5 的老瀏覽器),還會存在一段時間,但是大勢已去。也許幾年后,就不會再有人去安裝什么 Flash 播放器,Flash 也將成為一個歷史名詞。