成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

跨平臺(tái)移動(dòng)端框架UniApp的應(yīng)用實(shí)踐

新聞 Android
CRM改造項(xiàng)目需要研發(fā)涵蓋網(wǎng)上營(yíng)業(yè)廳(web版)主要業(yè)務(wù)能力的移動(dòng)端掌廳APP,項(xiàng)目整體開(kāi)發(fā)周期較短,且要求支持多平臺(tái)上線(xiàn)(IOS、安卓、H5等)。

 引言

CRM改造項(xiàng)目需要研發(fā)涵蓋網(wǎng)上營(yíng)業(yè)廳(web版)主要業(yè)務(wù)能力的移動(dòng)端掌廳APP,項(xiàng)目整體開(kāi)發(fā)周期較短,且要求支持多平臺(tái)上線(xiàn)(IOS、安卓、H5等)。每個(gè)平臺(tái)要求相對(duì)一致的展示效果和用戶(hù)體驗(yàn),多端多尺寸設(shè)備的適配效果和SDK接入都成為痛點(diǎn),引入一套跨平臺(tái)的Hybrid(混合開(kāi)發(fā))框架勢(shì)在必行。

一、移動(dòng)端跨平臺(tái)技術(shù)演進(jìn)

以往最早的以Cordova為代表的Hybrid開(kāi)發(fā),主要依賴(lài)于WebView。但是WebView是一個(gè)很重的控件,很容易產(chǎn)生內(nèi)存問(wèn)題,而且復(fù)雜的UI在WebView上顯示的性能不理想。JS與Native代碼之間的通信需要使用JSBridge進(jìn)行上下文切換,因此會(huì)降低一些性能。

Cordova原理示意圖

跨平臺(tái)移動(dòng)端框架UniApp的應(yīng)用實(shí)踐

直至Facebook革命性地推出了ReactNative技術(shù),才得以?huà)侀_(kāi)了WebView組件,改為利用JavaScriptCore來(lái)做橋接,將JS調(diào)用轉(zhuǎn)為Native調(diào)用,只犧牲了API轉(zhuǎn)換的小部分性能,這是跨平臺(tái)開(kāi)發(fā)的一大步進(jìn)步。 UniApp框架的構(gòu)建思想正是來(lái)源于此,并且引入Vue Runtime 深度定制進(jìn)一步優(yōu)化了渲染性能和用戶(hù)體驗(yàn),而其采用的VueJS通用語(yǔ)法也一并解決了React Native各平臺(tái)代碼差異化過(guò)大,且需要較多原生知識(shí)的問(wèn)題。

React Native及UniApp原理示意圖

跨平臺(tái)移動(dòng)端框架UniApp的應(yīng)用實(shí)踐

二、UniApp框架介紹與應(yīng)用

1. 什么是UniApp

uni-app 是一個(gè)使用 Vue.js 開(kāi)發(fā)跨平臺(tái)應(yīng)用的前端框架,開(kāi)發(fā)者編寫(xiě)一套代碼,可編譯到IOS、Android、H5、小程序等多個(gè)平臺(tái),由DCloud(數(shù)字天堂)公司推出和運(yùn)營(yíng)維護(hù)。

2. 為什么是UniApp

對(duì)比其他移動(dòng)端跨平臺(tái)框架(如Cordova/ReactNative/NativeJS),UniApp在跨端抹平度、擴(kuò)展靈活性、性能體驗(yàn)、周邊生態(tài)、開(kāi)發(fā)成本等幾個(gè)方面上擁有明顯的優(yōu)勢(shì)。

(1)跨端數(shù)量多:一套代碼,編譯后可發(fā)布到iOS、Android、H5、小程序等多個(gè)平臺(tái),且跨端抹平度高,應(yīng)用的顯示效果接近一致,真正能落實(shí)到生產(chǎn)力。這一點(diǎn)是UniApp的最大優(yōu)勢(shì),完勝其他跨平臺(tái)框架。

(2)性能體驗(yàn)優(yōu)秀:UniApp是體驗(yàn)更好的Hybrid框架,加載新頁(yè)面速度更快。且App端支持weex原生渲染,可實(shí)現(xiàn)更流暢的動(dòng)畫(huà)效果。相比較而言,依賴(lài)于WebView的Cordova框架性能方面就有所欠缺了。

(3)生態(tài)開(kāi)放豐富:UniApp的插件市場(chǎng),集成了近千余第三方插件,各種輪子拿來(lái)即用;同時(shí),由于UniApp的接口A(yíng)PI采用了小程序規(guī)范,微信生態(tài)的各種SDK可直接用于跨平臺(tái)App。在這個(gè)方面作對(duì)比,React Native框架的社區(qū)活躍度和資料文檔都較為有限。

(4)開(kāi)發(fā)成本低:以前由N個(gè)平臺(tái)開(kāi)發(fā)人員(IOS/安卓/H5)完成的開(kāi)發(fā)任務(wù),現(xiàn)在采用前端通用技術(shù)棧實(shí)現(xiàn),研發(fā)、維護(hù)、測(cè)試各環(huán)節(jié)的成本都大幅下降。

同時(shí),HBuilderX工具搭配UniApp可以免終端調(diào)試,可視化創(chuàng)建項(xiàng)目、可視化安裝組件和擴(kuò)展編譯器,研發(fā)人員的開(kāi)發(fā)體驗(yàn)也變得更好,從而能夠更高效地編寫(xiě)代碼。

3. 功能框架示意圖

UniApp在組件跨平臺(tái)(圖中綠色部分)的基礎(chǔ)上,同時(shí)支持某平臺(tái)下特色功能的定制開(kāi)發(fā)。通過(guò)條件編譯引入該平臺(tái)個(gè)性化UI組件或調(diào)用專(zhuān)有API,即可實(shí)現(xiàn)單平臺(tái)下的定制化需求且不影響和干擾其他平臺(tái)。

跨平臺(tái)移動(dòng)端框架UniApp的應(yīng)用實(shí)踐

4. 應(yīng)用生命周期

UniApp 支持如下的應(yīng)用生命周期函數(shù):

跨平臺(tái)移動(dòng)端框架UniApp的應(yīng)用實(shí)踐

5. 如何使用UniApp

(1) 下載開(kāi)發(fā)工具:HBuilderX

App開(kāi)發(fā)版本: http://www.dcloud.io/hbuilderx.html

(2) 安裝并打開(kāi)IDE之后,在點(diǎn)擊工具欄里的文件 -> 新建 -> 項(xiàng)目

(3) 選擇uni-app,輸入工程名,如:uni-test,點(diǎn)擊創(chuàng)建,成功創(chuàng)建 UniApp應(yīng)用。點(diǎn)擊模板里的 Hello uni-app 即可體驗(yàn)官方示例。

(4) 進(jìn)入項(xiàng)目,點(diǎn)擊工具欄的運(yùn)行 -> 運(yùn)行到瀏覽器/真機(jī)下運(yùn)行/模擬器運(yùn)行,也可以選擇小程序在微信開(kāi)發(fā)者工具里運(yùn)行。

(5) 工程目錄結(jié)構(gòu)

跨平臺(tái)移動(dòng)端框架UniApp的應(yīng)用實(shí)踐

6. 開(kāi)發(fā)規(guī)范

(1)頁(yè)面文件 遵循Vue單頁(yè)面組件規(guī)范,Vue中的結(jié)構(gòu)依然采用三大頂級(jí)代碼塊

https://vue-loader.vuejs.org/zh/spec.html#%E7%AE%80%E4%BB%8B

(2)組件標(biāo)簽 VUE通用模板寫(xiě)法,編譯后以IOS或Android原生UI控件渲染

(所以不能使用標(biāo)準(zhǔn)的HTML標(biāo)簽,JS對(duì)DOM操作也得盡量避免)

https://uniapp.dcloud.io/component/README

跨平臺(tái)移動(dòng)端框架UniApp的應(yīng)用實(shí)踐

(3)接口能力 微信小程序規(guī)范,接口地址前綴由wx修改uni

https://uniapp.dcloud.io/api/README

(4)樣式控制:以u(píng)px為尺寸單位,UniApp規(guī)定屏幕的基準(zhǔn)寬度750upx,使用 flex布局

https://uniapp.dcloud.io/frame?id=%E9%A1%B5%E9%9D%A2%E6%A0%B7%E5%BC%8F%E4%B8%8E%E5%B8%83%E5%B1%80

總結(jié)

任何框架都首先要服務(wù)于實(shí)際業(yè)務(wù)需求,技術(shù)的選型也需根據(jù)研發(fā)團(tuán)隊(duì)成員的技術(shù)方向和具體情況而定,對(duì)于項(xiàng)目建設(shè)而言技術(shù)框架沒(méi)有最好的只有最適合的。綜合來(lái)講, UniApp是一個(gè)非常優(yōu)秀的移動(dòng)端跨平臺(tái)框架,在UI表現(xiàn)力、性能體驗(yàn)、生態(tài)成熟度幾個(gè)維度都能經(jīng)得起推敲,從推出至目前一年多的時(shí)間行業(yè)內(nèi)的接受態(tài)度也都是比較認(rèn)可和反饋較佳的,比較適合這個(gè)做項(xiàng)目做產(chǎn)品講究短平快,組件化,小而美的時(shí)代,所以推薦給大家學(xué)習(xí)和應(yīng)用。

 

責(zé)任編輯:張燕妮 來(lái)源: 今日頭條
相關(guān)推薦

2011-07-06 11:16:32

Unity3DCocos2dSparrow Fra

2014-05-26 16:52:29

移動(dòng)前端web組件

2024-12-06 15:07:42

Python開(kāi)發(fā)

2014-07-08 09:37:28

跨平臺(tái)Webhtml5

2015-05-13 10:09:39

移動(dòng)跨平臺(tái)開(kāi)發(fā)

2010-10-09 15:01:27

PhoneGapiPhoneAndroid

2012-03-16 13:43:29

2025-03-14 00:53:12

2020-08-13 15:36:14

移動(dòng)端跨平臺(tái)小程序

2013-08-05 10:50:00

2010-11-11 09:04:05

跨平臺(tái)移動(dòng)開(kāi)發(fā)

2025-01-26 08:35:01

First UI移動(dòng)端開(kāi)發(fā)

2010-08-09 10:39:42

SilverlightMenlo

2012-04-25 16:16:08

Qcon2012Web APPPhoneGap

2014-06-04 10:37:20

CrossApp開(kāi)源跨平臺(tái)開(kāi)發(fā)引擎

2012-04-23 09:32:15

AppCan跨平臺(tái)開(kāi)發(fā)

2025-04-16 10:00:00

跨平臺(tái)開(kāi)發(fā)Uniapp開(kāi)發(fā)

2015-01-14 09:41:28

跨平臺(tái)移動(dòng)應(yīng)用Linux開(kāi)發(fā)

2021-05-27 05:22:28

前端引擎平臺(tái)

2023-11-07 07:07:15

藍(lán)綠部署G行
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 亚洲福利网 | 看片wwwwwwwwwww | 欧美一级欧美一级在线播放 | 中文字幕在线免费观看 | 欧美一级欧美三级在线观看 | 精品综合 | 欧美成人h版在线观看 | 国产区在线免费观看 | 精品国产成人 | 中文字幕专区 | 午夜亚洲 | 可以免费看的毛片 | 一区二区三区免费观看 | 国产精品毛片久久久久久久 | 老外黄色一级片 | 国产激情片在线观看 | 瑞克和莫蒂第五季在线观看 | 欧美激情精品久久久久久变态 | 亚洲久久久 | 神马九九 | 久久久久久久亚洲精品 | 欧美极品少妇xxxxⅹ免费视频 | 亚洲成人日韩 | 黄色大片网| 精品欧美一区二区三区久久久 | 午夜欧美a级理论片915影院 | 九九精品网 | 免费看91 | 亚洲欧美aⅴ | 在线播放国产一区二区三区 | 亚洲免费人成在线视频观看 | 久久99深爱久久99精品 | 国产成人一区在线 | 91精品久久久| 欧洲精品码一区二区三区免费看 | 龙珠z在线观看 | 国产成人精品午夜视频免费 | 久久精品色欧美aⅴ一区二区 | 亚洲欧美日韩精品久久亚洲区 | 亚洲一区二区三区在线免费 | 久久伊 |