HTML5定稿了,為什么原生App世界將被顛覆

2023-05-18    分類: 網(wǎng)站建設(shè)

HTML5第二階段:移動(dòng)互聯(lián)網(wǎng)

隨著Chrome和Safari的高歌猛進(jìn),以及IE+Flash的衰落,HTML5告一段落,進(jìn)入了下一個(gè)時(shí)代——移動(dòng)互聯(lián)網(wǎng)。HTML5的跨平臺(tái)優(yōu)勢(shì)在移動(dòng)互聯(lián)網(wǎng)時(shí)代被進(jìn)一步凸顯。HTML5是唯一一個(gè)通吃PC、Mac、iPhone、iPad、Android、Windows Phone等主流平臺(tái)的跨平臺(tái)語(yǔ)言。Java和Flash都曾夢(mèng)想這個(gè)位置,但夢(mèng)斷于iOS。此時(shí)人們紛紛開始研究基于HTML5開發(fā)跨平臺(tái)手機(jī)應(yīng)用。很多人當(dāng)時(shí)認(rèn)為,原生應(yīng)用只是過(guò)渡,就像當(dāng)年從C/S結(jié)構(gòu)轉(zhuǎn)變?yōu)锽/S結(jié)構(gòu)一樣。而且學(xué)習(xí)Objective-C和Java很費(fèi)勁,我既然會(huì)網(wǎng)頁(yè)開發(fā),為何不試試HTML5。

W3C此時(shí)成立了Device API工作組,為HTML5擴(kuò)展了Camera、GPS等手機(jī)特有的API,然而麻煩的是,移動(dòng)互聯(lián)網(wǎng)初期的迭代太快了,手機(jī)OS在不停的擴(kuò)展硬件API,陀螺儀、距離感應(yīng)器、氣壓計(jì)。。。每年手機(jī)OS都有大版本更新。而W3C作為一個(gè)數(shù)百家會(huì)員單位共同決策的組織,從標(biāo)準(zhǔn)草案的提出到達(dá)成一致是非常復(fù)雜的過(guò)程,跟不上移動(dòng)互聯(lián)網(wǎng)初期的快速迭代。

PhoneGap的出現(xiàn),給開發(fā)者打開了一扇窗。很多人期待PhoneGap不停擴(kuò)展API,來(lái)補(bǔ)充瀏覽器的不足。Adobe看到PhoneGap仿佛看到了重振江湖地位的希望,但在Adobe收購(gòu)PhoneGap后,又發(fā)現(xiàn)這個(gè)東西可商用性不足,而且開源使得Adobe無(wú)法像Flash那樣獲取商業(yè)利益,于是就把PhoneGap捐給了Apache,改名為Cordova。

因?yàn)楦鞣N原因,Cordova的定位最終沒(méi)有成為瀏覽器的強(qiáng)化,而走向了混合式開發(fā)?;诋?dāng)時(shí)的背景,他們認(rèn)為原生是不可替代的,“原生+HTML5”的混合模式更有意義。所以現(xiàn)在Cordova的使用模型是“原生工程師+HTML5工程師”一起協(xié)作完成App。

這時(shí)Facebook加入了W3C,牽頭成立了Mobile Web工作組。Facebook是混Web圈的,并且在手機(jī)OS上沒(méi)有自己的領(lǐng)地,他不喜歡被蘋果和Google掌控的原生應(yīng)用生態(tài)系統(tǒng)。Mobile Web這個(gè)工作組的重要目標(biāo)就是讓HTML5開發(fā)的網(wǎng)頁(yè)應(yīng)用達(dá)到原生應(yīng)用的體驗(yàn)。然而,事與愿違,它不努力也就算了,結(jié)果是努力了卻失敗了。2012年,F(xiàn)acebook放棄了HTML5的新聞充斥了全世界的IT媒體,HTML5瞬間被打入冷宮。

Facebook為何放棄HTML5?核心是當(dāng)時(shí)基于HTML5真的做不出好的移動(dòng)App。對(duì)比Twritter等競(jìng)爭(zhēng)對(duì)手的原生App,F(xiàn)acebook的HTML5版本實(shí)在無(wú)法讓用戶滿意。比如Push功能,到現(xiàn)在HTML5的推送和原生的推送體驗(yàn)差距依然巨大,更不用說(shuō)HTML5應(yīng)用的頁(yè)面切換白屏、下拉刷新/側(cè)滑菜單不流暢等眾多問(wèn)題。看著原生工程師輕松實(shí)現(xiàn)搖一搖、二維碼、語(yǔ)音輸入、分享到朋友圈等功能,更是讓HTML5工程師感覺(jué)自己站錯(cuò)了隊(duì)。

即使Facebook不喜歡被控制,也不能拿被用戶拋棄來(lái)冒險(xiǎn)。而且Facebook并沒(méi)有掌握關(guān)鍵點(diǎn)—手機(jī)瀏覽器內(nèi)核。如果瀏覽器不跟上,徒然定一堆標(biāo)準(zhǔn)草案落不了地。

而瀏覽器在手機(jī)上的表現(xiàn)是什么呢?先看Google,Chrome性能雖高,但Android上的瀏覽器卻并非Chrome,而是WebKit改出來(lái)的一個(gè)蹩腳的Android瀏覽器;再看蘋果,iOS上不允許其他瀏覽器引擎上架App Store,而且其他使用Safari引擎的應(yīng)用也無(wú)法調(diào)用蘋果自己的JavaScript加速引擎Nitro。結(jié)果是蘋果和Google不但不在瀏覽器上積極實(shí)現(xiàn)HTML5關(guān)于移動(dòng)App所需的規(guī)范,反而對(duì)HTML5做出種種限制。

不管是當(dāng)時(shí)硬件能力不足,還是手機(jī)OS廠商的故意限制,總之結(jié)果就是:在移動(dòng)互聯(lián)網(wǎng)的初期,一定是原生應(yīng)用生態(tài)系統(tǒng)的天下,iOS和Android首先自己的地盤穩(wěn)固后,產(chǎn)業(yè)才會(huì)向下個(gè)階段升級(jí)。

Facebook也好,PhoneGap也好,想在移動(dòng)互聯(lián)網(wǎng)初期就分一杯羹是分不到的,但堅(jiān)持下來(lái),機(jī)會(huì)往往會(huì)出現(xiàn)。

HTML5這回真的來(lái)了

終于,在2014年10月底,W3C宣布HTML5正式定稿。這個(gè)時(shí)間,不晚不早,硬件性能更強(qiáng)、手機(jī)OS迭代速度下降。

隨著HTML5標(biāo)準(zhǔn)定稿,一切紛爭(zhēng)將告一段落,現(xiàn)在,屬于HTML5的時(shí)代到來(lái)了。

有人說(shuō),光標(biāo)準(zhǔn)定稿沒(méi)用啊,配套起來(lái)了嗎?HTML5做的應(yīng)用究竟能否匹敵原生App?答案是,HTML5不但可以匹敵原生App,甚至它天然的很多特性超越了原生App。

我們先談?wù)凥TML5原來(lái)不如原生應(yīng)用的地方,業(yè)內(nèi)俗稱HTML5有“性工能”障礙。即HTML5性能不如原生、開發(fā)工具不如原生、能力調(diào)用不如原生。 

這幾個(gè)問(wèn)題導(dǎo)致開發(fā)者無(wú)法使用HTML5做出與原生一樣的App。然而,不管是硬件升級(jí)還是OS廠商策略變化,以及相關(guān)軟件技術(shù)的成熟,已解決了HTML5的“性工能”障礙。

1.  硬件升級(jí)

2011年,iPhone 4s的CPU是A5,現(xiàn)在iPhone 6是A8,按蘋果的歷次發(fā)布會(huì)的說(shuō)法,速度共提升了7.5倍。這3年間7.5倍的速度提升,抹平了太多HTML5的性能問(wèn)題。

2.  蘋果、Google的策略變化

Google在2013年底發(fā)布的Android 4.4,內(nèi)置的Webview不再是蹩腳的Android WebKit瀏覽器,而是Chromium,性能大幅提升。從最新的Android 5.0開始,Webview可以通過(guò)Google Play Store實(shí)時(shí)更新,和Chrome的升級(jí)保持一致,用戶就可以不刷機(jī)享受到最新的瀏覽器引擎;再看Apple方面,2012年iPhone 5發(fā)布后,HTML5在iOS上的表現(xiàn)已令人滿意,Safari的JavaScript加速引擎Nitro不再那么重要,不過(guò)在iOS 8發(fā)布后,蘋果還是很識(shí)趣地取消了三方程序調(diào)用Nitro的限制,現(xiàn)在任意瀏覽器或應(yīng)用調(diào)用iOS的UIWebview都可以利用Nitro加速,這樣在前端使用JS做大型運(yùn)算也成為可能。兩大手機(jī)操作系統(tǒng)霸主和瀏覽器巨頭的態(tài)度發(fā)生了變化,使得HTML5在手機(jī)上的發(fā)展不再受限,而且這個(gè)變化不可逆只能繼續(xù)向前,這種變化勢(shì)必會(huì)產(chǎn)生深遠(yuǎn)的影響。

3.  軟件技術(shù)的成熟

PhoneGap的發(fā)展雖然放緩了,但其他產(chǎn)品技術(shù)卻成熟了。2014年的iWeb大會(huì)上,眾多廠商的產(chǎn)品提供了面向開發(fā)者免費(fèi)或開源的HTML5性工能障礙的解決方案。

(注:作者作為從業(yè)人員,也會(huì)在分析各種方案時(shí)提到我們公司的方案,但作者會(huì)客觀不夸張的陳述方案,而且該方案是純免費(fèi)的,沒(méi)有商業(yè)銷售嫌疑。)

DCloud公司在iWeb大會(huì)上發(fā)布了系統(tǒng)的HTML5“性工能缺失”的解決方案,包括:

a)  性能:提升HTML5性能的手機(jī)端引擎,讓側(cè)滑菜單、下拉刷新等動(dòng)態(tài)交互卡頓的問(wèn)題得以解 決;

b)  工具:HTML5開發(fā)IDE產(chǎn)品HBuilder, 超快的編程利器;

c)  能力:把40萬(wàn)原生API封裝成JavaScript對(duì)象,以解決HTML5能力不足問(wèn)題的Native.js技術(shù);

d)  最接近原生體驗(yàn)的高性能框架:MUI框架,體積只有幾十K,加載、運(yùn)行遠(yuǎn)快于一般框架?;谠摲桨搁_發(fā)的HTML5應(yīng)用完全可以達(dá)到原生App的功能和體驗(yàn)。

使用HBuilder開發(fā)HTML5應(yīng)用

英特爾公司發(fā)布了Crosswalk引擎,可以讓Android 4.0 - 4.3的手機(jī)上的應(yīng)用打包Chromium引擎而不是Android WebKit。畢竟目前市場(chǎng)上存在大量Android 4.0 - 4.3的手機(jī),同時(shí)統(tǒng)一的WebView也避免了兼容性的煩惱。

在專業(yè)方向上很多公司也做出了不錯(cuò)的成績(jī)。觸控的Cocos2d-html5、Egret runtime和Ludei CocoonJS強(qiáng)化了Canvas的表現(xiàn),讓HTML5游戲體驗(yàn)更好;UC、獵豹等手機(jī)瀏覽器都強(qiáng)化了音視頻播放的表現(xiàn)。

不管是硬件升級(jí)、軟件成熟,還是操作系統(tǒng)廠商策略變化,都在強(qiáng)力推動(dòng)HTML5的爆發(fā)。

不過(guò)要注意,我說(shuō)的HTML5爆發(fā),不是指手機(jī)瀏覽器會(huì)替代桌面成為應(yīng)用入口。有人說(shuō)HTML5不好,因?yàn)橛脩粲憛挻蜷_瀏覽器輸入U(xiǎn)RL的過(guò)程。我想說(shuō)這種想法是對(duì)HTML5的片面理解。HTML5!=傳統(tǒng)瀏覽器,雖然編程語(yǔ)言還是HTML、Javascript、CSS,但發(fā)行方式絕不是傳統(tǒng)網(wǎng)站那么簡(jiǎn)單。HTML5應(yīng)用的入口,反而很少是啟動(dòng)瀏覽器輸入U(xiǎn)RL,它可以是存在于手機(jī)桌面的圖標(biāo)、也可以來(lái)自超級(jí)App(如微信朋友圈)、以及搜索引擎、應(yīng)用市場(chǎng)、廣告聯(lián)盟。。。到處都是它的入口。它的入口,比原生App更多。

 

文章標(biāo)題:HTML5定稿了,為什么原生App世界將被顛覆
轉(zhuǎn)載注明:http://www.muchs.cn/news6/259956.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供營(yíng)銷型網(wǎng)站建設(shè)網(wǎng)站導(dǎo)航、面包屑導(dǎo)航做網(wǎng)站、App開發(fā)網(wǎng)站內(nèi)鏈

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站網(wǎng)頁(yè)設(shè)計(jì)