Android和iOS在新版本中助力HTML5
兩個***的移動操作系統(tǒng),Android和iOS,有可能準(zhǔn)備在它們的***版本中為HTML5增加助力。Google從Android的核心組件中剝離了WebView,把它變成了一個可升級的組件,同時,蘋果用WKWebView替代了過去的UIWebView,后者在混合應(yīng)用上有性能、穩(wěn)定性和功能方面的優(yōu)勢。
混合應(yīng)用和原生應(yīng)用類似。它們也是從Google Play或App Store上安裝,只不過它們是使用HTML、CCS、JavaScript之類的技術(shù)開發(fā)的。瀏覽器引擎用于解析、運行和顯示這些應(yīng)用,每個操作系統(tǒng)都為引擎導(dǎo)出了API與之交互。在Android下,這個引擎就是WebView,iOS下則叫WKWebView。開發(fā)者可以在他們的應(yīng)用中嵌入Web內(nèi)容,以及訪問那些一般的移動網(wǎng)站無法訪問的資源,比如攝像頭、文件系統(tǒng)和NFC等等。
WebView一直以來都是Android的核心組件,以前只有在操作系統(tǒng)升級的時候才會更新。由于Android版本的發(fā)布速度一般較慢,并且各個廠商之間的節(jié)奏又有所不同,不是所有的手機(jī)和平板電腦都能同時升級到***版本的(如果真要升級的話),這樣就導(dǎo)致了用戶無法使用***的功能,或受到安全漏洞的威脅。在KitKat發(fā)布后,Chrome開發(fā)團(tuán)隊承認(rèn)了這個問題,并且打算把瀏覽器引擎變成一個定期更新的組件。
從Android Lollipop開始,有一個新功能叫可升級的WebView。顧名思義,現(xiàn)在這個WebView作為一個常規(guī)的app,能從Google Play上得到更新。這不僅保證了重要的安全更新能及時部署到設(shè)備上,也使得新的功能和API能及時推送給依賴WebView的應(yīng)用的開發(fā)者們。
蘋果也在iOS 8中嘗試支持更多的HTML5功能。一件出了名的事就是用WKWebView替代了舊的引擎UIWebView。在以前的iOS版本中,混合應(yīng)用無法達(dá)到原生Safari應(yīng)用的JavaScript性能水平,因為蘋果限制了Safari的JavaScript引擎Nitro的使用,使UIWebView變得很慢。
現(xiàn)在有了WKWebView的API,在iOS 8上運行的混合應(yīng)用可以利用和Safari瀏覽器一樣的優(yōu)化功能。基準(zhǔn)測試的結(jié)果顯示,在這些應(yīng)用中,JavaScript的速度是舊的UIWebView API的4.5倍。但是新的API有一個bug有可能破壞某些混合應(yīng)用,從beta 4開始就有。
除了這個主要的變化,iOS 8也支持以下的HTML5功能:
· WebGL
· IndexedDB
· HTML模板
· 導(dǎo)航/高精度計時
· CCS形狀
· SVG片斷標(biāo)識符
你可查看這篇文章了解WKWebView的具體改進(jìn)細(xì)節(jié)。
本文鏈接:http://www.cocoachina.com/webapp/20141121/10277.html