西貢區(qū)WebApp
? 現(xiàn)如今APP開(kāi)發(fā)有兩個(gè)主流的方向:原生App 以及移動(dòng)Web App。那么您是否知道這兩者有何區(qū)別?什么是原生APP,什么是web APP?
什么是原生APP?
在智能手機(jī)上運(yùn)行的App應(yīng)用程序有NativeAPP(基于本地操作系統(tǒng)運(yùn)行)和Web APP(基于手機(jī)瀏覽器運(yùn)行),其中Native App就是原生App的意思,所以原生App開(kāi)發(fā)也就是指基于本地操作系統(tǒng)的App開(kāi)發(fā)服務(wù)。如今市面上多數(shù)的APP軟件開(kāi)發(fā)都是使用的原生程序編寫(xiě)的應(yīng)用程序,也就是說(shuō)大部分的手機(jī)APP屬于原生APP應(yīng)用軟件。
原生APP訪問(wèn)和兼容的能力也比較好,可以支持在線或者離線消息推送或是進(jìn)行本地資源訪問(wèn),以及攝像、撥號(hào)、藍(lán)牙、功能的調(diào)取。原生APP開(kāi)發(fā)有許多的優(yōu)勢(shì),如原生APP是針對(duì)不同的平臺(tái)為用戶(hù)提供不同的體驗(yàn)、原生應(yīng)用可以節(jié)約寬帶成本、訪問(wèn)本地資源、打開(kāi)的速度更快并為用戶(hù)提供最佳的用戶(hù)體驗(yàn)和優(yōu)質(zhì)的用戶(hù)界面等。
什么是web APP?
Web App是一種框架型APP開(kāi)發(fā)模式(HTML5 APP 框架開(kāi)發(fā)模式),具有跨平臺(tái)的優(yōu)勢(shì),該模式通常由“HTML5云網(wǎng)站+APP應(yīng)用客戶(hù)端”兩部分構(gòu)成,APP應(yīng)用客戶(hù)端只需安裝應(yīng)用的框架部份,而應(yīng)用的數(shù)據(jù)則是每次打開(kāi)APP的時(shí)候,去云端取數(shù)據(jù)呈現(xiàn)給手機(jī)用戶(hù)。
原生APP和webApp的對(duì)比
1.開(kāi)發(fā)方面
原生APP:每一種移動(dòng)操作系統(tǒng)都需要獨(dú)立的開(kāi)發(fā)項(xiàng)目,iphone版本、Ipad版本、安卓版本。每種平臺(tái)都需要獨(dú)立的開(kāi)發(fā)語(yǔ)言。Java(Android), Objective-C(iOS)等等3.需要使用各自的軟件開(kāi)發(fā)包,開(kāi)發(fā)工具以及各自的控件。開(kāi)發(fā)成本高、開(kāi)發(fā)速度慢、維護(hù)成本高。三個(gè)平臺(tái)(IOS、安卓、windows)的規(guī)則、推廣、運(yùn)營(yíng)都不相同。官方應(yīng)用商店對(duì)APP上線審核流程比較復(fù)雜而且很慢,會(huì)嚴(yán)重影響APP的發(fā)布上線。
Web App :因?yàn)檫\(yùn)行在移動(dòng)設(shè)備的瀏覽器上,所以只需要一個(gè)開(kāi)發(fā)項(xiàng)目??梢酝ㄟ^(guò)HTML、 CSS或者JavaScript來(lái)進(jìn)行Web APP的開(kāi)發(fā)。開(kāi)發(fā)成本低、開(kāi)發(fā)速度快。
2.功能方面
原生App:原生APP是一個(gè)系統(tǒng)性的應(yīng)用程序,可以類(lèi)比于電腦上的軟件。原生app可以調(diào)用移動(dòng)終端的硬件設(shè)備, 比如:麥克風(fēng)、攝像頭、短信、GPS、藍(lán)牙、重力感應(yīng)等。實(shí)現(xiàn)功能豐富
Web App:Web APP可以類(lèi)比于電腦上的網(wǎng)頁(yè)。Web APP更多是頁(yè)面展示類(lèi)的APP。只能使用有限的移動(dòng)硬件設(shè)備功能。更多用于頁(yè)面展示,側(cè)重于簡(jiǎn)單的交互,無(wú)法使用很多硬件設(shè)備獨(dú)特的功能。
3.應(yīng)用安裝使用方面
原生App:需要通過(guò)應(yīng)用商店將原生app下載到手機(jī)上或移動(dòng)終端上。以獨(dú)立的應(yīng)用程序運(yùn)行
用戶(hù)必須手動(dòng)去下載并安裝這些原生App,原生應(yīng)用可以節(jié)約寬帶成本,可以訪問(wèn)本地資源、緩存。
Web App:通過(guò)移動(dòng)設(shè)備上的瀏覽器訪問(wèn),軟件更新只需要更新服務(wù)器就夠了,用戶(hù)層面不需要做任何操作。不需要安裝客戶(hù)端,可以節(jié)省手機(jī)終端的內(nèi)存空間。
4.版本控制方面
原生App:用戶(hù)可以自由地選擇是否更新軟件版本,所以會(huì)出現(xiàn)不同用戶(hù)同時(shí)使用不同版本的情況。同時(shí)也會(huì)導(dǎo)致維護(hù)成本比較高。使用舊版本的用戶(hù)無(wú)法體驗(yàn)新版本的完整功能。
Web App:所有的用戶(hù)都是用同樣的版本,所有用戶(hù)獲得的功能都是相同的。版本更新比較方便,直接在服務(wù)器側(cè)更新數(shù)據(jù)即可。一個(gè)功能做好了就能上線,一天更新幾十次都毫無(wú)壓力。如果客戶(hù)端只是個(gè)瀏覽器,那一切都會(huì)變得很簡(jiǎn)單。另外web統(tǒng)一性高,跨平臺(tái)適用時(shí)開(kāi)發(fā)量少。由于其入口不明顯(瀏覽器導(dǎo)航或者隨意點(diǎn)擊鏈接進(jìn)入),讓用戶(hù)記住的門(mén)檻也隨之拔高,每次推廣導(dǎo)入的流量都可能淪為一次性努力,用戶(hù)留存率低。
5.加載速度方面
原生App:原生APP由“云服務(wù)器數(shù)據(jù)+APP應(yīng)用客戶(hù)端”兩部分構(gòu)成,APP應(yīng)用所有的UI元素、數(shù)據(jù)內(nèi)容、邏輯框架均安裝在手機(jī)終端上。訪問(wèn)的時(shí)候,不需要重新下載加載應(yīng)用頁(yè)面框架,只需要加載數(shù)據(jù)即可。所以加載速度更快,頁(yè)面響應(yīng)更快。
Web App:而Web APP打開(kāi)一個(gè)頁(yè)面,都需重新加載頁(yè)面的所有元素,訪問(wèn)速度受手機(jī)終端性能和網(wǎng)絡(luò)環(huán)境的限制,導(dǎo)致加載速度慢,而且操作頻繁容易卡死。
總結(jié)
原生App偏向于交互,注重用戶(hù)體驗(yàn)(導(dǎo)航切換、勾選選項(xiàng)、圖片、視頻等操作),Web APP偏向與瀏覽和簡(jiǎn)單的交互。 一些功能需要訪問(wèn)硬件(攝像頭、傳感器等),使用原生App, Web APP用于信息展示。 成本有限時(shí),核心的功能使用原生APP,周邊輔助的功能可以使用Web App。
現(xiàn)狀:比較流行的方法就是將原生App 和Web App進(jìn)行融合,就是說(shuō)應(yīng)用大的框架是原生的,其他詳細(xì)的內(nèi)容就通過(guò)網(wǎng)頁(yè)封裝,這樣做的好處就是在方便更新的同時(shí),也能保證核心功能的交互體驗(yàn)。
掃一掃,關(guān)注我們