App程序的大量出現(xiàn),曾讓互聯(lián)網(wǎng)流量的入口由瀏覽器一統(tǒng)天下的局面迅速分崩離析。不過,隨著HTML5技術(shù)的成熟,瀏覽器與App之間的較量又有了新的變化。
讓網(wǎng)絡(luò)入口重回瀏覽器
尤其是當(dāng)HTML5從技術(shù)變成標(biāo)準(zhǔn)并逐步成為現(xiàn)實(shí),各大瀏覽器廠商也紛紛基于HTML5這一實(shí)時(shí)的前沿標(biāo)準(zhǔn)進(jìn)行戰(zhàn)略性布局,紛紛推出自主研發(fā)內(nèi)核,如UC瀏覽器的U3內(nèi)核以及手機(jī)QQ瀏覽器的X5內(nèi)核。
打開最新Android版本的UC瀏覽器83,你會(huì)發(fā)現(xiàn)許多熟悉的App圖標(biāo)出現(xiàn)在其中,包括網(wǎng)易郵箱、QQ空間、淘寶網(wǎng)、豆瓣電臺(tái)等等。實(shí)際上,這些圖標(biāo)相當(dāng)于瀏覽器內(nèi)的“書簽”,點(diǎn)擊后會(huì)進(jìn)入相關(guān)網(wǎng)站,但其中的內(nèi)容看上去和客戶端沒什么兩樣。通過瀏覽器,你還能將這些圖標(biāo)移到手機(jī)桌面上,變成“真正”的App。
不只是UC,手機(jī)QQ瀏覽器為了給Web App提供更出色的性能,在開源Webkit內(nèi)核基礎(chǔ)之上自主研發(fā)了X5內(nèi)核,極大地提升了手機(jī)瀏覽器的HTML5支持能力。據(jù)了解,在最新的X5內(nèi)核版手機(jī)QQ瀏覽器V4.0 Betal的全面公測(cè)中,手機(jī)QQ瀏覽器創(chuàng)下HTML5測(cè)試得分高達(dá)425分,可以完美支持HTML5的各種應(yīng)用。
如果說(shuō)這些國(guó)內(nèi)互聯(lián)網(wǎng)企業(yè)對(duì)HTML5的趨之若鶩只代表了國(guó)內(nèi)情況,那么諾基亞和微軟兩家巨頭在HTML5上的布局,則更容易吸引全球的目光。不久前,微軟發(fā)布了支持使用HTML5技術(shù)開發(fā)的“IrishSpring”主題網(wǎng)站。至于諾基亞,則斥81億美元巨資購(gòu)得并打造了NOKIA MAP業(yè)務(wù),也通過HTML5走出了Symbian終端,走到了包括iOS和Android系統(tǒng)的設(shè)備中——只要你的手機(jī)瀏覽器支持HTML5,都可以通過直接訪問諾基亞地圖的網(wǎng)站,來(lái)獲得類似于客戶端的地圖查詢及導(dǎo)航體驗(yàn)。當(dāng)你將該網(wǎng)頁(yè)保存到手機(jī)桌面時(shí),它便變成了WebApp,更為關(guān)鍵的是諾基亞不需要對(duì)這些競(jìng)爭(zhēng)對(duì)手的操作系統(tǒng)進(jìn)行適配,也能植入自己的App。
對(duì)于移動(dòng)應(yīng)用程序開發(fā)者來(lái)說(shuō),他們的選擇則更為實(shí)際一些。依照目前iPhone/Android迅速提升市場(chǎng)占有率的情勢(shì)來(lái)看,未來(lái)如果想要在先進(jìn)的智慧型手機(jī)上撰寫應(yīng)用程式,要不是選擇使用0bj ective-C+CocoaTouch Framework撰寫iPhone/iPad應(yīng)用程式,就是選擇Java+Android Framework撰寫Android應(yīng)用程式,如果想要同時(shí)支持兩種平臺(tái),勢(shì)必要維護(hù)兩套程式碼,對(duì)于剛起步的小服務(wù)而言也算是個(gè)小有負(fù)擔(dān)的運(yùn)維成本。
使用HTML5、CSS3來(lái)撰寫Web—based的應(yīng)用程式,若要同時(shí)支援iPhone及Android,幾乎只需要維護(hù)一份程式碼(少部份要應(yīng)clients作修改),而且未來(lái)若有其它移動(dòng)裝置擁有支援HTML5的瀏覽器,那同樣的WebApp直接就多了一個(gè)支援平臺(tái)。
不過,必須注意的是HTML5主要服務(wù)對(duì)象還是給予Web的應(yīng)用,并不會(huì)對(duì)全部App開發(fā)造成威脅,這樣有利于不同類型應(yīng)用使用不同的開發(fā)方式,靈活性更強(qiáng)。
App還是HTML5
HTML5是一種新技術(shù),開發(fā)者可以開發(fā)出通過標(biāo)準(zhǔn)瀏覽器在任何設(shè)備上運(yùn)行的Web應(yīng)用。許多人認(rèn)為HTML5將拯救Web,使與平臺(tái)有關(guān)的原生應(yīng)用遭到淘汰。到底App還是HTML5會(huì)是誰(shuí)贏得最后的勝利,在業(yè)界也有不少討論,最近一份來(lái)自BI Intelligence機(jī)構(gòu)的報(bào)告則從功能、用戶體驗(yàn)、商業(yè)化、成本、發(fā)布方式等五個(gè)方面比較了兩者的優(yōu)劣勢(shì)。
功能:目前這是HTML5面臨的一大問題,HTML5不支持某些功能,但隨著HTML5不斷改進(jìn),情況可能會(huì)有所改變;用戶體驗(yàn):迄今為止,原生應(yīng)用在這一方面還有優(yōu)勢(shì)。這是因?yàn)镠TML5還沒有得到充分發(fā)展,還因?yàn)殚_發(fā)者可以通過原生代碼完成更多任務(wù);商業(yè)化:大多數(shù)應(yīng)用商店與App和iTunes服務(wù)是有聯(lián)系的,并與信用卡掛鉤,所以App的商業(yè)化強(qiáng)于HTML5。但是對(duì)于程序本身來(lái)說(shuō),HTML5版比App版更便宜,因?yàn)樗梢钥绮煌钠脚_(tái)使用,而App卻不行;發(fā)布方式:HTML5在發(fā)行方面有優(yōu)勢(shì)。部分業(yè)內(nèi)人士可能對(duì)應(yīng)用商店發(fā)行模式非常滿意,但更開放的Web模式將使更多的人能發(fā)布應(yīng)用,還將降低蘋果等應(yīng)用商店服務(wù)提供商的控制力。
不過,HTML5帶來(lái)的是顛覆傳統(tǒng)的作用。通過以上五種比較,雖然目前HTML5處于劣勢(shì),但BI Intelligence認(rèn)為,未來(lái)HTML5從App手中接過大旗也許只是時(shí)間問題,當(dāng)它的技術(shù)更加完善時(shí)就是HTML5的天下。唯一擔(dān)憂的就是現(xiàn)在標(biāo)準(zhǔn)制定組織WHATWG與W3c因?yàn)槔砟钌系牟町愻[分家,弄出兩個(gè)版本的HTML5標(biāo)準(zhǔn)來(lái),所以說(shuō)HTML5的敵人不是原生App,而是HTML5本身。
第三條路
就在圍繞究竟是開發(fā)HTML5移動(dòng)Web App還是原生Native App的業(yè)界爭(zhēng)論毫無(wú)休止時(shí),一些公司已經(jīng)在選擇第三種方法:采用“混合應(yīng)用程序方法”(Hybrid App Approach)來(lái)調(diào)和這兩種方法。
Hybrid App開發(fā)既利用了原生功能,同時(shí)又為將來(lái)采用HTML5充當(dāng)著具有戰(zhàn)略意義的臺(tái)階?!盎旌稀边@個(gè)詞實(shí)際上帶來(lái)了一系列廣泛的可能性。有些應(yīng)用程序只是將來(lái)自相應(yīng)網(wǎng)站的一些頁(yè)面作為應(yīng)用程序的一部分來(lái)裝入,比如美國(guó)銀行、Facebook和Yelp的iPhone應(yīng)用程序。另一些應(yīng)用程序包含了用HTML編寫的幾個(gè)嵌入式頁(yè)面,比如《瘋狂塔防》(TowerMadness)游戲。但還有一些應(yīng)用程序的整個(gè)用戶界面都是用HTML實(shí)現(xiàn)的,比如Harmounius(一種圖形畫板)或羅技公司的Squeezebox Controller。
許多公司還沒有急于跟上HTML5潮流,一個(gè)主要原因是,他們認(rèn)為HTML應(yīng)用程序無(wú)法訪問原生設(shè)備功能。的確,純粹的移動(dòng)Web App(指在瀏覽器里面運(yùn)行的應(yīng)用程序,而不是Hybrid App)目前只能訪問攝像頭、麥克風(fēng)和地址簿等設(shè)備功能。雖然萬(wàn)維網(wǎng)聯(lián)盟(W3C)方面的工作取得了進(jìn)展,讓W(xué)eb App可以訪問這類設(shè)備服務(wù),但是移動(dòng)瀏覽器目前并不提供這樣的功能——移動(dòng)瀏覽器提供這樣的功能對(duì)許多創(chuàng)新型的移動(dòng)應(yīng)用程序來(lái)說(shuō)是一個(gè)關(guān)鍵要求。但是在HybridApp領(lǐng)域,有了開源PhoneGap庫(kù)等框架,JavaScript代碼就有可能訪問手機(jī)羅盤、拍照片、尋找或創(chuàng)建聯(lián)系人或約會(huì)事項(xiàng),以及充分利用移動(dòng)Web App無(wú)法訪問的其他許多設(shè)備功能。能否訪問設(shè)備功能并不是Hybrid App和移動(dòng)Web App的唯一區(qū)別。另一個(gè)重要的區(qū)別是,Hybrid App基本上是通過應(yīng)用程序商店分發(fā)的:不是用瀏覽器瀏覽至HybridApp,而是下載和安裝它。