web app(h5)、 源生app、混合app

我以爲web app 、源生app和混合app,沒有哪一個好與很差之說,主要還得看所作的app,開發app還得從多方面去考慮,好比投入開發的人員、開發週期、開發費用、是否支持跨平臺、用戶體驗等。android

 

1、什麼叫作源生app、什麼叫作移動web appp 、什麼叫作混合appios

 

源生app 是專門針對某一類移動設備而生的,它們都是被直接安裝到設備裏,而用戶通常也是經過網絡商店或者賣場來獲取,開發起來不支持跨平臺,每種平臺得單獨開發相同應用。隨便說幾個源生APP的例子,好比ios的camera+以及android的keepassdroid。web

移動app 都是須要用到網絡的,它們利用設備商的瀏覽器(好比iPhone的safari)來運行,並且他們布須要在設備上下載後安裝。編程

混合型應用(Hybrid App)就是介於兩者之間的折中方案。在許多狀況下,它能集二者之長,再經過中間件包裝成一個可發佈到應用商店的應用程序。Hybrid App運行在一個源生App的容器裏,接住移動系統自帶的瀏覽器引擎來渲染界面和解析腳本。例如:PhoneGap開發的程序就屬於混合型應用。瀏覽器

 

2、優缺點網絡

1.源生appapp

你使用過微軟PowerPoint 或者Word吧?這些可直接在你電腦上運行或者在智能手機上運行,簡單來講,原生應用是特別爲某種操做系統開發的,好比iOS、Android、黑莓等等,它們是在各自的移動設備上運行的。框架

優勢:編程語言

可訪問手機全部功能(GPS、攝像頭);工具

速度更快、性能高、總體用戶體驗不錯;

可線下使用(由於是在跟Web相對地平臺上使用的);

支持大量圖形和動畫; 容易發現(在App Store裏面)和從新發現(應用圖標會一直在主頁上);

應用下載能創造盈利(固然App Store抽取20-30% 的營收)。

缺點:

開發成本高;

支持設備很是有限(通常是哪一個系統就在哪一個平臺專屬設備上用);

上線時間不肯定(App Store審覈過程不一);

內容限制(App Store限制);

得到新版本時需從新下載應用更新。

舉例:Yellow Pages Group 就開發了是幾個版本(iOS、黑莓、Android),他們在每個原生應用市場都有上架。 

 

2.移動web App

Web應用本質上是爲移動瀏覽器設計的基於Web的應用,它們是用普通Web開發語言開發的,能夠在各類智能手機瀏覽器上運行。 


優勢:

支持設備普遍;

較低的開發成本;

可即時上線;

無內容限制

用戶能夠直接使用最新版本(自動更新,不需用戶手動更新)。

缺點:

表現略差(對聯網的要求比較大);

用戶體驗沒那麼炫;

圖片和動畫支持性不高;

無法在App Store中下載、沒法經過應用下載得到盈利機會;

要求聯網;

對手機特色有限制(攝像頭、GPS等)。

對於這些缺點,若是能把HTML 5的優勢用到Web上的話就會獲得很大改善,儘管技術在提升,目前它還不能作原生應用能夠作的每件事。 


有些公司,好比金融時報繼原生應用後也開發了Web應用,用戶經過瀏覽器來訪問他們的應用,由於他們的應用要採起應用內購買,而App Store是不容許應用內購買的,否則它們就沒法拿到那20%-30% 的抽成了。 

 

3.混合型App

混合應用你們都知道是原生應用和Web應用的結合體,採用了原生應用的一部分、Web應用的一部分,因此必須在部分在設備上運行、部分在Web上運行。 


不過混合應用中比例很自由,好比Web 佔90%,原生佔10%;或者各佔50%。 
優勢:

兼容多平臺;

順利訪問手機的多種功能;

App Store中可下載(Wen應用套用原生應用的外殼);

可線下使用。

缺點:

不肯定上線時間;

用戶體驗不如本地應用;

性能稍慢(須要鏈接網絡);

技術還不是很成熟。

好比Facebook如今的應用屬於混合應用它能夠在許多App Store暢通無阻,可是摻雜了大量Web特性,因此它運行速度比較慢,而如今爲了提升性能FB又決定採用原生應用。

 

 

3、總結(什麼狀況下用什麼):

 

h5:

 

常常換的東西用h5,好比活動頁面

 

廣告位用h5

 

用戶手冊。使用協議用h5。由於不須要更新版本就能夠完成修改

 

有些動畫不易於用源生實現的用h5

 

預算有限,不在意用戶體驗和速度用h5

 

 

 

源生:

 

講究頁面切換流暢用源生

 

對網絡很敏感的用源生

 

頻繁調用硬件用源生

 

結論,重點差別:

● 開發難度。移動web和混合App開發難度對於web開發者來講相對較低,並且能夠充分利用現有的web開發工具和工做流程

● 發佈渠道和更新方式。混合App能夠在應用商店App Store發佈,但能夠自主更新,而原生App的更新必須經過應用商店App Store。

● 移動設備本地API訪問。混合App能夠經過JavaScript API訪問到移動設備的攝像頭、GPS;而原生App能夠經過原生編程語言訪問設備全部功能。

● 跨平臺和可移植性。基於瀏覽器的移動web最好的可移植性和跨平臺表現;混合App也能節省跨平臺的時間和成本,只需編寫一次核心代碼就可部署到多個平臺,而原生App的跨平臺性能最差。

● 搜索引擎友好。只有移動web對搜索引擎友好,可與在線營銷無縫整合。

● 貨幣化。混合App除廣告外,還支持付費下載及程序內購買;原生App的程序內購買金額2012年首次超過下載收費。

● 消息推送。只有混合App和原生App支持消息推送,這能增長用戶忠誠度。Apache Cordova是PhoneGap貢獻給Apache後的開源項目,是從PhoneGap中抽出的核心代碼,是驅動PhoneGap的核心引擎。 PhoneGap是一個開源的開發框架,使用HTML、CSS和JavaScript來構建跨平臺的的移動應用程序。目前開發商能夠只編寫一次應用程序, 而後在6個主要的移動平臺和應用程序商店(app store)裏進行發佈,這些移動平臺和應用程序商店包括:iOS、Android、BlackBerry、webOS、Bada以及Symbian等。 現今有哪些互聯網公司正在使用PhoneGap/Apache Cordova嗎?咱們沒法用一個準確的名單列表呈現給你們,本文羅列出一些巨頭公司,正在使用PhoneGap或是Apache Cordova做爲他們的移動應用跨平臺開發工具:

相關文章
相關標籤/搜索