The King is Dead, Long Live the King!
我指的就是Android和Chrome——姑且神棍一把:在不久的將來,我們可以很清楚的看到Android這個(gè)過渡系統(tǒng)的式微(或者更可能一點(diǎn),是被逐漸逐漸的淡化合并)并且讓位于Chrome-Based的新系統(tǒng),如果要給個(gè)期限,1.5個(gè)大版本之內(nèi)(如果不是更早的話)吧。畢竟像Google這樣把技術(shù)演進(jìn)和公司戰(zhàn)略統(tǒng)一得如此嚴(yán)絲密縫,兼且配上一步一個(gè)腳印的堅(jiān)實(shí)執(zhí)行力,簡(jiǎn)直是到了讓人覺得可怕的程度,實(shí)在無法揣測(cè)他們的步伐到底會(huì)多快。
當(dāng)年看見類似「操作系統(tǒng)的未來在Web技術(shù),Android只是在這超前理念可以變現(xiàn)之前的一個(gè)過渡」這種論調(diào)時(shí),我還一廂情愿認(rèn)為這只不過是買下Android之后,Google的遮羞之詞罷了??墒牵絹碓蕉嗟氖聦?shí)讓我不得不相信,Google真是這么想的,而且,確實(shí)也是這么一步步將前景開始變成了現(xiàn)實(shí)。
移動(dòng)系統(tǒng)上或許端倪還不那么明顯,但是不妨先看看Google在桌面系統(tǒng)上的動(dòng)作:
從最初的chrome extension到后來更強(qiáng)調(diào)app,然后,開始大力推廣packaged app,并且逐步收緊各種安全限制,并且各種強(qiáng)調(diào)packaged app、離線app,仿佛是自廢武功一樣的把原本相對(duì)自由的web應(yīng)用加上了諸多的條條框框,沙盒以及消息機(jī)制雖然安全,但是老讓人有點(diǎn)束手束腳——特別是廢掉了eval機(jī)制,把好端端的js腳本語言整得格外復(fù)雜;
這些都讓我不解過,直到Google推出了ChomeOS,并且力推ChromeBook,我才算是大概理解了他們的思路。原來他們玩真的啊,想構(gòu)造一個(gè)基于web前端技術(shù)的桌面平臺(tái);但就算那個(gè)時(shí)候,我都還是保持著觀望和不屑的態(tài)度:就憑那些簡(jiǎn)陋的網(wǎng)頁打包就想替換掉桌面系統(tǒng)?也沒少看到那些媒體評(píng)測(cè)對(duì)ChromeBook的冷嘲熱諷。
然后,我就被去年圣誕商戰(zhàn)美國筆記本市場(chǎng)的ChromeBook的亮眼成績打臉了。在這之前,Native Client的技術(shù)的支持和推廣其實(shí)已經(jīng)吹響了Google開始動(dòng)真格的號(hào)角——
接著,Google真動(dòng)手了,Chrome App for Desktop成為了去年年底至今的重頭戲;如果放著半年時(shí)間不去關(guān)注這塊,然后忽然去體驗(yàn)一下,真是會(huì)被Google的快速演進(jìn)所震驚。
如下三張圖,第一張就是我當(dāng)年鄙視的所謂的單獨(dú)app——說到底,就是一個(gè)彈出的網(wǎng)頁罷了,看著那瀏覽器的框架死板的框住內(nèi)容,實(shí)在是讓人提不起精神;

接下來,就是真正的packaged app——選擇了No Browser Frame的窗口模式,簡(jiǎn)單講,你可以真正的定義屬于的你App窗口的每一個(gè)像素——用你喜歡的任何web 前端技術(shù)。還有比這更爽的UI設(shè)計(jì)過程么?


而且一些畫龍點(diǎn)睛的細(xì)節(jié),也確實(shí)標(biāo)志著Google的野心:
App Launch 開始方便的駐扎進(jìn)了Windows的快捷訪問欄,OSX的Dock;APP的圖標(biāo)獨(dú)立,并且可以方便的Pin在任務(wù)欄或者Dock——而且,Google和以前不同,如果你沒有打開Chrome,而是直接使用Launch選擇packaged app,那么除了單獨(dú)打開的app之外,用戶根本看不到任何Chrome在后臺(tái)運(yùn)行的跡象(當(dāng)然,打開任務(wù)管理器或者是top之類,還是無所遁形);

此外,這樣的「小細(xì)節(jié)」加上剛才提到的app窗口本身目前幾乎是完全的獨(dú)立,Google基本上已經(jīng)抹平了所謂的Chrome APP和傳統(tǒng)的Native程序在UI之間的區(qū)別,至少普通用戶是無法分辨的;
同時(shí),是為了「逼真」嗎?Packaged APP的頁面中,無法實(shí)現(xiàn)href的跳轉(zhuǎn)、無法審查元素(除非打開flag中的調(diào)試)、當(dāng)然也不可能讓你刷新——的確撲朔迷離無法分辨。
至于常被人說起的諸如安全性、開發(fā)復(fù)雜度(特別是一些算法等等)的問題,我能看到想到的,也就是NACL了,簡(jiǎn)單、直接、但是的確好用,不管怎樣,C/C++始終不會(huì)孤單——再配合上Google逐步加強(qiáng)的,設(shè)備相關(guān)的API的深化(特別是考慮到日漸增多的ChromeBook和依然由Google把持著的Android),手機(jī)和其他移動(dòng)設(shè)備廠商間的「軍備競(jìng)賽」等等因素,Chrome App注定可以用Native App的姿態(tài)出現(xiàn)在更廣泛的設(shè)備上的。
而回到Android上來,Google有能力,并且早就開始做到對(duì)Linux的深度Chrome化定制,如果放到本來就由它主導(dǎo)的Android身上,恐怕更加輕松,雖然目前的進(jìn)展和桌面端比起來偏保守,還停留在桌面加APP入口、打開后全屏的初級(jí)階段,可是Google有一直負(fù)責(zé)Chrome的皮采來兼管Android,又何愁進(jìn)展?目前移動(dòng)設(shè)備越來越逆天的配置更是讓可能出現(xiàn)的對(duì)性能的擔(dān)憂日益減輕。
用不了多久,花不了幾個(gè)小版本的更迭,Chrome就會(huì)成為Android中更加底層和重要的平臺(tái), Chrome App on Android恐怕就會(huì)慢慢成為Android上的主流——到了那時(shí)候,成功完成了智能手機(jī)早期攻城拔寨任務(wù)的Android也就離功成身退不遠(yuǎn)了。