依照目前iPhone/Android 迅速提升市占率的情勢來看,未來如果想要在先進(jìn)的智慧型手機(jī)上撰寫應(yīng)用程式,勢必要維護(hù)兩套程式碼,對于剛起步的小服務(wù)而言也算是個小有負(fù)擔(dān)的維運(yùn)成本。如果使用HTML5來撰寫能同時支援iPhone及Android的應(yīng)用程式,幾乎只需要維護(hù)一份程式碼即可,未來若有其它行動裝置擁有支援HTML5的瀏覽器,那同樣的WebApp直接就多了一個支援平臺。
離線緩存為HTML5開發(fā)移動應(yīng)用提供了基礎(chǔ)
HTML5 Web Storage API可以看做是加強(qiáng)版的cookie,不受數(shù)據(jù)大小限制,有更好的彈性以及架構(gòu),可以將數(shù)據(jù)寫入到本機(jī)的ROM中,還可以在關(guān)閉瀏覽器后再次打開時恢復(fù)數(shù)據(jù),以減少網(wǎng)絡(luò)流量。同時,這個功能算得上是另一個方向的后臺“操作記錄”,而不占用任何后臺資源,減輕設(shè)備硬件壓力,增加運(yùn)行流暢性。在線app支持邊使用邊下載離線緩存,或者不下載離線緩存;而離線app必須是下載完離線緩存才能使用。
音頻視頻自由嵌入,多媒體形式更為靈活
原生開發(fā)方式對于文字和音視頻混排的多媒體內(nèi)容處理相對麻煩,需要拆分開文字、圖片、音頻、視頻,解析對應(yīng)的URL并分別用不同的方式處理。HTML5在這個方面完全不受限制,可以完全放在一起進(jìn)行處理。如果新聞類、微博類、社交類應(yīng)用的信息呈現(xiàn)中實(shí)現(xiàn)文字與多媒體混排,而不用專門嵌入webview,將是一件多美好的事情,至少現(xiàn)在原生方式實(shí)現(xiàn)起來還有困難。
實(shí)時通訊
以往的網(wǎng)站由于HTTP協(xié)議以及瀏覽器的設(shè)計(jì),實(shí)時的互動性相當(dāng)?shù)氖芟?,只能使用一些技巧來「仿真」?shí)時的通訊效果,但HTML5提供了完善的實(shí)時通訊支持,應(yīng)用中嵌入實(shí)時通信、信息內(nèi)容進(jìn)行實(shí)時提醒,HTML5都可以幫你實(shí)現(xiàn)。
檔案以及硬件支持
在Gmail等新的網(wǎng)頁程序當(dāng)中,已經(jīng)可以透過拖拉的方式將檔案作為郵件附件,這就是HTML5檔案的功能中的Drag’n Drop和File API。移動應(yīng)用中對于數(shù)據(jù)傳輸?shù)男枨笤絹碓酱?,傳統(tǒng)的路徑選擇方式太過于繁瑣,而HTML5的拖拽上傳功能則讓你省了不少時間!
語意化
語意化的網(wǎng)絡(luò)是可以讓計(jì)算機(jī)能夠更加理解網(wǎng)頁的內(nèi)容,對于像是搜索引擎的優(yōu)化(SEO)或是推薦系統(tǒng)可以有很大的幫助,同時HTML5也能讓搜索更快速、更準(zhǔn)確。
比起桌面應(yīng)用程式,行動裝置的網(wǎng)路連線更不穩(wěn)定,而且有時在移動中并無網(wǎng)路可以使用,透過HTML5這些技術(shù)才能讓使用者即使在無網(wǎng)路環(huán)境下也能繼續(xù)使用你的webapp。這說明HTML5主要服務(wù)對象還是給予web的應(yīng)用,并不會對全部app開發(fā)造成威脅,這樣有利于不同類型應(yīng)用使用不同的開發(fā)方式,靈活性更強(qiáng)。