HTML5 在這個(gè)時(shí)間定稿,不晚不早,硬件性能更強(qiáng)、手機(jī) OS 迭代速度下降。隨著 HTML5 標(biāo)準(zhǔn)定稿,一切紛爭(zhēng)將告一段落,現(xiàn)在,屬于 HTML5 的時(shí)代到來(lái)了。這個(gè)曾讓人滿(mǎn)懷希望,又被 Facebook 等眾多滿(mǎn)懷希望的開(kāi)發(fā)者放棄的技術(shù),現(xiàn)在會(huì)告訴大家,曾經(jīng)讓各位失望的原因,現(xiàn)在已經(jīng)不存在了!這聽(tīng)起來(lái)有些驚人,大家不禁要問(wèn):是真的嗎?讓我們細(xì)細(xì)分 析。
業(yè)內(nèi)俗稱(chēng) HTML5 有性能障礙。即 HTML5 性能不如原生、開(kāi)發(fā)工具不如原生、能力調(diào)用不如原生。
這幾個(gè)問(wèn)題導(dǎo)致開(kāi)發(fā)者無(wú)法使用 HTML5 做出與原生一樣的 App。然而,不管是硬件升級(jí)還是 OS 廠(chǎng)商策略變化,以及相關(guān)軟件技術(shù)的成熟,已解決了 HTML5 的障礙。
移動(dòng)端硬件軍備競(jìng)賽 2011年,iPhone 4s的CPU是A5,現(xiàn)在iPhone 6是A8,按蘋(píng)果的歷次發(fā)布會(huì)的說(shuō)法,速度共提升了7.5倍。這3年間7.5倍的速度提升,抹平了太多HTML5的性能問(wèn)題。 蘋(píng)果、Google的策略變化 Google 在2013年底發(fā)布的Android 4.4,內(nèi)置的Webview不再是蹩腳的Android WebKit瀏覽器,而是Chromium。
2012年iPhone 5發(fā)布后,HTML5在iOS上的表現(xiàn)已令人滿(mǎn)意,Safari獨(dú)家的JavaScript加速引擎Nitro不再那么重要,不過(guò)在iOS 8發(fā)布后,蘋(píng)果還是很識(shí)趣地取消了三方程序調(diào)用Nitro的限制,現(xiàn)在任意瀏覽器或應(yīng)用調(diào)用iOS的UIWebview都可以利用Nitro加速。兩大手 機(jī)操作系統(tǒng)霸主和瀏覽器巨頭的態(tài)度發(fā)生了變化,使得HTML5在手機(jī)上的發(fā)展不再受限,而且這個(gè)變化不可逆只能繼續(xù)向前,這種變化勢(shì)必會(huì)產(chǎn)生深遠(yuǎn)的影響。
軟件技術(shù)的成熟 PhoneGap的發(fā)展雖然放緩了,但其他產(chǎn)品技術(shù)卻成熟了。2014年的iWeb大會(huì)上,眾多廠(chǎng)商的產(chǎn)品提供了面向開(kāi)發(fā)者免費(fèi)或開(kāi)源的HTML5性工能障礙的解決方案。
我們都知道瀏覽器的默認(rèn)控件樣式和原生控件樣式差別很大,一個(gè)高性能的、樣式體驗(yàn)與原生控件一樣的 UI 框架是非常重要的,之前 jQuery Mobile 等產(chǎn)品的因性能不足,所以難當(dāng)此任。在這里做一個(gè)廣告,我所在的 DCloud 公司在 iWeb 大會(huì)上發(fā)布了系統(tǒng)的 HTML5“性工能缺失”的解決方案,包括解決 HTML5 性能問(wèn)題的手機(jī)端引擎、超快的 HTML5 開(kāi)發(fā) IDE 產(chǎn)品 HBuilder、還有把 40 萬(wàn)原生 API 封裝成 JavaScript 對(duì)象,以解決 HTML5 能力不足問(wèn)題的 Native.js 技術(shù)。
英特爾公司發(fā)布了 Crosswalk 引擎,可以讓 Android 4.0-4.3 的手機(jī)上的應(yīng)用打包 Chromium 引擎而不是 Android WebKit。雖說(shuō)未來(lái) Android 4.4 會(huì)占據(jù)更多市場(chǎng)份額,但目前主流的 Android 手機(jī)的系統(tǒng)版本畢竟還是 4.1、4.2。
在專(zhuān)業(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)廠(chǎng)商策略變化,都在強(qiáng)力推動(dòng) HTML5 的爆發(fā)。
不過(guò)要注意,我們說(shuō)的 HTML5 爆發(fā),不是指手機(jī)瀏覽器爆發(fā)。有人說(shuō) HTML5 不好,因?yàn)橛脩?hù)討厭打開(kāi)瀏覽器輸入 URL 的過(guò)程。我想說(shuō)這種想法是對(duì) HTML5 的片面理解。HTML5!= 傳統(tǒng)瀏覽器,雖然編程語(yǔ)言還是 HTML、Javascript、CSS,但發(fā)行方式絕不是傳統(tǒng)網(wǎng)站那么簡(jiǎn)單。HTML5 應(yīng)用的入口,反而很少是啟動(dòng)瀏覽器輸入 URL,它可以是存在于手機(jī)桌面的圖標(biāo)、也可以來(lái)自超級(jí) App(如微信朋友圈)、以及搜索引擎、應(yīng)用市場(chǎng)、廣告聯(lián)盟。。。到處都是它的入口。它的入口,比原生 App 更多。