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