熊亞蒙
(廣州工程技術(shù)職業(yè)學(xué)院,廣東廣州,510075)
跨平臺移動應(yīng)用開發(fā)系統(tǒng)的設(shè)計與實(shí)現(xiàn)
熊亞蒙
(廣州工程技術(shù)職業(yè)學(xué)院,廣東廣州,510075)
隨著社會經(jīng)濟(jì)的飛速發(fā)展,移動設(shè)備應(yīng)用程序的開發(fā)已成為互聯(lián)網(wǎng)技術(shù)關(guān)注與研究的一個重要方向。當(dāng)前,移動設(shè)備操作系統(tǒng)之間存在明顯差異,這對移動應(yīng)用產(chǎn)品的研發(fā)與推廣產(chǎn)生了較大的制約。基于此,文章從跨移動平臺技術(shù)入手,理論結(jié)合實(shí)踐對跨平臺移動應(yīng)用開發(fā)系統(tǒng)的設(shè)計與實(shí)現(xiàn)進(jìn)行研究。
跨平臺;移動應(yīng)用;開發(fā)系統(tǒng)
在智能手機(jī)、平板電腦等智能移動設(shè)備應(yīng)用日益增加的背景下,運(yùn)行于智能移動計算設(shè)備上的移動操作系統(tǒng)平臺呈現(xiàn)出日新月異的變化與發(fā)展,在此過程中,移動系統(tǒng)應(yīng)用程序的發(fā)展亦十分迅猛。當(dāng)前,智能移動設(shè)備領(lǐng)域含多個平臺,多樣化特征突出,這與移動應(yīng)用程序的高速發(fā)展產(chǎn)生了矛盾,引發(fā)了跨平臺的問題。經(jīng)過多年研究與實(shí)現(xiàn),學(xué)者與研發(fā)人員已提出多種用于應(yīng)用程序在不同系統(tǒng)平臺間移植需求解決的方法,這對移動應(yīng)用程序在移動系統(tǒng)平臺間跨越的實(shí)現(xiàn)發(fā)揮著不錯的借鑒意義。經(jīng)總結(jié)與進(jìn)一步分析,文章提出一種針對性的跨平臺移動應(yīng)用開發(fā)系統(tǒng)。
跨平臺即在軟件開發(fā)環(huán)節(jié)不以某一特定的硬件環(huán)境及操作系統(tǒng)為限制,開發(fā)完成后無需或需要很少的修改便能在多種平臺或操作系統(tǒng)中運(yùn)行。當(dāng)前,跨移動平臺以跨平臺式引擎驅(qū)動與跨平臺式應(yīng)用編譯為其兩種主要方式,其中,引擎驅(qū)動是在目標(biāo)設(shè)備上進(jìn)行引擎安裝,對平臺底層操作系統(tǒng)進(jìn)行評比,利用引擎解釋,用戶可在目標(biāo)設(shè)備上完成相應(yīng)任務(wù);應(yīng)用編譯則是采用某種標(biāo)準(zhǔn)的開發(fā)語言開發(fā)相關(guān)應(yīng)用,這些應(yīng)用在運(yùn)行于目標(biāo)平臺之前,會接受編譯器的編譯處理,生成目標(biāo)平臺能夠識別并執(zhí)行相關(guān)操作的程序。
跨平臺引擎驅(qū)動的主要技術(shù)是由Unity Technologies推出的,可實(shí)現(xiàn)建筑可視化與實(shí)時三維動畫開發(fā)的一種在多個平臺上均能應(yīng)用的綜合型專業(yè)游戲引擎——Unity 3D,它借助C#與JzvaScript的混編基本語言及Mono Runtime對跨平臺功能予以實(shí)現(xiàn)??缙脚_應(yīng)用編譯主要對HTML、CSS及JavaScript技術(shù)予以采用執(zhí)行應(yīng)用開發(fā)任務(wù),借助瀏覽器的適配性條件對跨平臺功能予以實(shí)現(xiàn),如PhoneGap、Titanium等。PhoneGap以Web開發(fā)為基礎(chǔ),對W3C標(biāo)準(zhǔn)予以遵循,能夠?qū)eb app封裝為不同平臺的軟件應(yīng)用程序,現(xiàn)已實(shí)現(xiàn)對HTML5標(biāo)準(zhǔn)的全面支持;Titanium可對JavaScript、CSS、HTML代碼進(jìn)行轉(zhuǎn)換,使其以底層Native Code的形式表示出來,雖不能借助瀏覽器實(shí)現(xiàn)跨平臺功能,但可借助應(yīng)用程序所在系統(tǒng)的鏈接庫對跨平臺要求予以滿足。
當(dāng)前,游戲引擎對跨平臺引擎驅(qū)動技術(shù)Unity3D的應(yīng)用比較多,該技術(shù)在業(yè)務(wù)系統(tǒng)開發(fā)中并不適用;而基于開發(fā)方便的優(yōu)勢,跨平臺編譯技術(shù)在較多場景中得到了應(yīng)用,但在復(fù)雜圖形與動畫中的支持中卻顯現(xiàn)出功能受限的不足。HTML5的出現(xiàn)對Web語言實(shí)現(xiàn)多媒體、3D功能的可能性予以凸顯,在增強(qiáng)終端能力的同時對調(diào)用性能予以優(yōu)化。
2.1 移動設(shè)備API設(shè)計
移動設(shè)備各項(xiàng)功能的實(shí)現(xiàn)應(yīng)以設(shè)備屬性值的鍵入為前提,在此基礎(chǔ)上,將Acceleromter作為運(yùn)動感應(yīng)器對設(shè)備的位置進(jìn)行感知,明確其坐標(biāo)信息,進(jìn)而向用戶提供精準(zhǔn)的定位服務(wù);此外,利用GPS感應(yīng)器的訪問功能也可實(shí)現(xiàn)對社會位置的獲取功能;而借助接口訪問,移動設(shè)備還可向用戶提供音頻與視頻等服務(wù),對其個性化需求予以滿足。
2.2 HTML5渲染引擎框架設(shè)計
坐標(biāo)轉(zhuǎn)換點(diǎn)擊測試模塊與Render樹構(gòu)建維護(hù)模塊是網(wǎng)絡(luò)視圖架構(gòu)的兩個主要的組成模塊。第一,對解析結(jié)構(gòu)進(jìn)行渲染與繪制,然后利用調(diào)用平臺繪制接口,并在設(shè)備屏幕中繪制相關(guān)節(jié)點(diǎn),以此完成對整個頁面的描繪。第二,為了確定精準(zhǔn)的節(jié)點(diǎn)信息,需在得出Render樹樣式計算結(jié)果后,借助測試模塊重新布局?jǐn)?shù)據(jù)接口,最后實(shí)現(xiàn)對節(jié)點(diǎn)與圖片的渲染。
2.3 模塊設(shè)計
(1)流程引擎模塊。當(dāng)服務(wù)器端接收到用戶發(fā)送的請求后,控制器會對請求進(jìn)行識別,然后將其傳至完整的流程管理器中,按照程序與步驟進(jìn)行相應(yīng)的處理與操作,最后以頁面為支持對用戶請求做出答復(fù)。
(2)業(yè)務(wù)處理模塊。業(yè)務(wù)處理模塊功能的實(shí)現(xiàn)以流程引擎任務(wù)的完成為基礎(chǔ)。此環(huán)節(jié)中業(yè)務(wù)初始化十分重要,它是完成各業(yè)務(wù)模塊工作的基礎(chǔ),當(dāng)交易類初始化與業(yè)務(wù)類初始化全部完成之后,業(yè)務(wù)模塊會按步驟對全部交易予以實(shí)現(xiàn),直至各項(xiàng)步驟均已調(diào)用,程序才會終止。
(3)組件庫模塊。組件庫模塊是跨平臺移動應(yīng)用開發(fā)系統(tǒng)中的重要技術(shù)模塊,不同組件之間的功能相互獨(dú)立。模塊的實(shí)現(xiàn)需要由用戶進(jìn)行自定義,這可對用戶需求予以良好的滿足?;陂_發(fā)所需,組件庫模塊相關(guān)操作的實(shí)現(xiàn)可按步驟對組件進(jìn)行調(diào)用,在進(jìn)行具體框架的設(shè)計之時,應(yīng)提高對Base Component在業(yè)務(wù)模塊中重要性的認(rèn)識,若對go方法進(jìn)行重寫,則可結(jié)合實(shí)際的操作步驟做出相應(yīng)的定義,以此完成對各模塊的自主操作。
(4)頁面模塊。頁面模塊的功能主要為對數(shù)據(jù)或頁面模板進(jìn)行解析,以此完成結(jié)合數(shù)據(jù)總線及文件的任務(wù)。要想實(shí)現(xiàn)這一模塊,需首先從總線中獲取相關(guān)數(shù)據(jù),并對其進(jìn)行自定義處理,然后執(zhí)行對頁面模板的解析操作,生成HTML文件,在此過程中,對用戶所需的相關(guān)結(jié)果以頁面形式予以顯示。
(5)數(shù)據(jù)總線模塊。在進(jìn)行相關(guān)交易之時,數(shù)據(jù)的存儲與獲取需借助數(shù)據(jù)總線來完成。當(dāng)客戶端接收用戶請求并向服務(wù)器發(fā)送相關(guān)數(shù)據(jù)信息時,會先由數(shù)據(jù)總線進(jìn)行信息的接收,然后,服務(wù)器執(zhí)行對用戶請求的處理操作,從數(shù)據(jù)總線模塊中提取相關(guān)數(shù)據(jù)并對其進(jìn)行解析,最終將解析好的數(shù)據(jù)以結(jié)果的形式返回至客戶端。
跨平臺移動應(yīng)用開發(fā)系統(tǒng)的設(shè)計與實(shí)現(xiàn)研究已得到了學(xué)者及相關(guān)工作人員的廣泛重視,而其研究與開發(fā)工作也取得了一定的成績??缙脚_移動應(yīng)用開發(fā)系統(tǒng)具有能夠在多種操作系統(tǒng)中運(yùn)行的優(yōu)勢,可推動移動應(yīng)用的推廣與發(fā)展,同時,對移動設(shè)備市場的發(fā)展產(chǎn)生促進(jìn)作用。
[1]沙潔.基于事件的跨平臺移動應(yīng)用開發(fā)框架設(shè)計與實(shí)現(xiàn)[D].上海交通大學(xué),2011.
[2]李麗平,薛玉倩.基于HTML5跨平臺移動應(yīng)用開發(fā)的研究與實(shí)踐[J].河北軟件職業(yè)技術(shù)學(xué)院學(xué)報,2017(2):35-38.
The design and implementation of cross-platform mobile application development system
Xiong Yameng
(Guangzhou Institute of Technology, Guangzhou Guangdong,510075)
Along with the rapid development of social economy, the exploit of ME application program has become an important research direction of technologies research. Now, there is an obvious difference between different ME OS, which hinders the R&D of ME products. Under this background, the paper makes a research on design and implementation of cross-platform mobile application development system.
cross-platform;ME;development system