移動互聯網應用目前主要有兩種類型,一種是原生app(Native app),一種是通過網頁提供的app(Web app)。兩者各有優缺,總的來說,融合是趨勢,但目前來說,Native app仍然是高品質產品的首選。
Native app
Native app因為位于平臺層上方,向下訪問和兼容的能力會比較好一些,可以支持在線或離線,消息推送或本地資源訪問,攝像撥號功能的調取。但是由于設備碎片化,App的開發成本要高很多,維持多個版本的更新升級比較麻煩,用戶的安裝門檻也比較高。
Native App的優勢:
提供最佳的用戶體驗,最優質的用戶界面,最華麗的交互
針對不同平臺提供不同體驗
可節省帶寬成本
可訪問本地資源
盈利模式明朗
Native App的劣勢:
移植到不同平臺上比較麻煩
維持多個版本的成本比較高
Web app
Web無需安裝,對設備碎片化的適應能力優于App,它只需要通過XHTML、CSS和JavaScript就可以在任意移動瀏覽器中執行。
Web App的優勢:
開發成本低
適配多種移動設備成本低
跨平臺和終端
迭代更新容易
無需安裝成本
Web App的劣勢:
瀏覽的體驗短期內還無法超越原生應用
不支持離線模式(html5將會解決這個問題)
消息推送不夠及時
調用本地文件系統的能力弱
簡單的比較而言,兩者的主要區別有:
Native app運行速度更快;
Native app可以更省帶寬;
Native app支持離線操作;
Native app訪問本地資源(如本地硬件和文件);
Native app可以去中心化;
Native app開發成本相對來說偏高
Web app部署成本很低;
Web app學習成本很低;
Web app跨平臺和終端;
Native app更多存在的是一些用戶常用的垂直領域的app(就如同我們pc端的快捷方式)
對于一些使用頻率不高的app,整合或許才是他們未來的出路。微信、百度的light app平臺甚至是手機桌面上的搜索框等、都是整合的方式之一,做到用戶有需求時能盡快找到即可。
隨著隨著html5、瀏覽器的規范統一他也將在Web app呈現出很多的表現形式,到時會有更多的web app會在手機瀏覽器上展現。
Native app+Web app的融合,是現在越來越多的APP開發的趨勢, 當然以html5為基礎的Web app目前還有不完善的地方, 瀏覽器支持的API不夠多, 調試工具的缺乏,都導致了Web app不能迅速的普及。Native app的優勢不言而喻,但問題就在于不能跨平臺,開發成本高。對開發者來說,選擇自己適合的, 小快靈的往前走就好了。
當Web的體驗和Native的體驗逐漸趨近的時候,人們更愿意把精力花在內容獲取上,而不是軟件交互上,但是現階段的交互體驗,恰恰是影響人們獲取內容的主要短板。所以,趨勢擺在那里,我們卻無法預測這個時間差。
就跟電腦端的應用一樣,雖然現在Web化的趨勢已經非常明顯了,但是還是無法取代你本機安裝的一些工具類的、游戲類的應用,在Web技術沒有達到本地應用的效率和體驗之前,Web是無法顛覆Native的。
總得來說,Web只是我們作為設計者和開發者所期待的一種理想化結果,開發成本低、輕松跨平臺、迭代更新快,但是顯然,現階段用戶的期待和手機設備廠商的期待還是體驗上更勝一籌的Native。Web之于我們,只是一種趨勢。在這個也許會非常久的過渡階段,對復雜產品來說,Native App + Web App也許是個不錯的解決方案。
附:在之乎上有人介紹航班管家app實現方式。
1)兩大核心功能:機票查詢和航班動態,全部是native app,主要是為了保證速度和穩定性,因為這時候的用戶對效率很敏感。
2)輔助的服務功能:我們還提供諸如“機場登機口導航”、“機場商家地圖”、“航空公司服務”以及“酒店查詢”等功能,這些功能由于暫時不是用戶的最基本需求,同時在業務上調整和增加的內容要求很靈活,所以我們采用內嵌web網頁的方式來實現,將用戶引導進入我們自己和其它第三方的網站里。這些功能都統一放在“實用工具”的分類里。
3)創新型功能:在一季度末,航班管家會推出“機場漂流瓶”以及“航班同乘人”等準社區服務,這都是基于web,并已經開始采用html5的一些方法,希望能夠達到兩個目的:在體驗上接近native app,開發上具備更多的靈活性和跨平臺性。