2020-11-12 01:00:00 來自于應(yīng)用公園
不少企業(yè)在開發(fā)APP時在糾結(jié)原生APP還是混合APP開發(fā),它們究竟有何差別呢?
即我們所稱的傳統(tǒng)APP開發(fā)模式,該開發(fā)針對現(xiàn)在主流的操作系統(tǒng)IOS、Android采用不同的語言和框架進(jìn)行開發(fā),該模式所有UI元素、數(shù)據(jù)內(nèi)容、邏輯框架均安裝在手機(jī)終端上??呻x線運行,通?!胺?wù)器數(shù)據(jù)+APP應(yīng)用客戶端”兩部份構(gòu)成的APP應(yīng)用,服務(wù)器的業(yè)務(wù)邏輯能力相對本地要低很多,大部分只是與本地服務(wù)的數(shù)據(jù)同步。 而市面上還有一種APP開發(fā)形式我稱其為WEB APP。 字面上的意思我們就能看的出這類APP以WEB為核心,所有的UI元素、數(shù)據(jù)內(nèi)容、邏輯框架均在WEB端服務(wù)器上來處理,本地的APP簡單的講來說就是一個瀏覽器,用來解析來自服務(wù)器上發(fā)送至本地的所有的WEB網(wǎng)頁代碼。這類APP相對源生來說所有的UI元素,以及數(shù)據(jù)業(yè)務(wù)處理全部由WEB端來處理。因為APP只是一個瀏覽器所以一個我們能使用的功能及其有限。 先看過常見的兩種APP開發(fā)模式后我們就聊聊今天的主題,
因為主角的原因我們就說的細(xì)一些。 既然名字不同于前兩種,那么開發(fā)模式以及應(yīng)用功能上也不同于前兩種APP開發(fā)模式。所謂的混合APP就是將源生與WEB揉合開發(fā)出的APP。 首先混合APP使用了源生的開發(fā)語言在設(shè)備上使用源生語言開發(fā)具有調(diào)取硬件能力的APP,然后通過WEB來處理數(shù)據(jù)業(yè)務(wù)邏輯。接下舉例來解釋一下混合APP開發(fā)的過程。 混合APP使用原生方式開發(fā)APP的硬件功能調(diào)用方式。利用服務(wù)器網(wǎng)頁開發(fā)運動APP里的界面,進(jìn)行遠(yuǎn)端數(shù)據(jù)存取等操作。服務(wù)器網(wǎng)頁通過 Web頁面來加載,且網(wǎng)頁可與APP通訊,進(jìn)行數(shù)據(jù)交互。 由于原生APP的硬件調(diào)用,可以本地權(quán)限較大化的使用。 舉例來說開發(fā)一款運動APP,有開啟運動模式,運動信息展示,簽到的功能。需要獲取一個設(shè)備的重力感應(yīng)傳感器,陀螺儀,GPS,攝像頭這些設(shè)備的數(shù)據(jù)。移動端開發(fā)具有源生功能可以調(diào)取以上設(shè)備獲取相應(yīng)數(shù)據(jù)的APP并配有對應(yīng)的插件。按下移動端的按鈕,開啟對應(yīng)的設(shè)備獲取相應(yīng)的設(shè)備數(shù)據(jù),然后以WEB端制定好的交互規(guī)則,將數(shù)據(jù)通過js發(fā)送至WEB端。然后WEB端將移動端發(fā)送過來的數(shù)據(jù)在WEB解析,進(jìn)行運動信息展示。 由于采用服務(wù)器網(wǎng)頁,可以方便部署與迭代開發(fā),減少升級時對應(yīng)用商店的依賴。 對APP中嵌入的服務(wù)器網(wǎng)頁進(jìn)行兼容處理后,可以直接被瀏覽器移動版本所采用,一舉多得。當(dāng)移動網(wǎng)絡(luò)的速度與流量不再成為問題時,這種開發(fā)方式,可以使APP的開發(fā)能力獲得較大化。同時,可以減少APP的長期開發(fā)與維護(hù)成本。 組建這么一支團(tuán)隊,需要有移動應(yīng)用開發(fā)人員,前端開發(fā)人員,后端開發(fā)人員。但是 App 的開發(fā)與迭代速度,可以通過增加前端與后端人員的方式得到顯著提升,遠(yuǎn)比在“鐵板一塊”的原生 App 架構(gòu)下,增加人手要顯著得多。 隨著H5技術(shù)的日趨完善,使得混合APP的界面顯示效果也不會遜色于源生APP的界面顯示效果,所以混合APP或許是目前適應(yīng)市場生產(chǎn)環(huán)境的一個APP開發(fā)環(huán)境。 貴陽APP開發(fā)公司作為企業(yè)轉(zhuǎn)型+互聯(lián)網(wǎng)全案服務(wù)商,定位于企業(yè)移動戰(zhàn)略服務(wù),對面臨轉(zhuǎn)型升級的企業(yè)提供比較比較全面的互聯(lián)網(wǎng)+咨詢、產(chǎn)品設(shè)計、技術(shù)開發(fā)、推廣和運營服務(wù)。