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