李慶洋
摘要:隨著智能手機(jī)性能越來越強(qiáng)大,手機(jī)軟件逐漸應(yīng)用于企業(yè)的各項日常辦公,成為油田信息共享交流中不可或缺的重要工具。企業(yè)人員隨著業(yè)務(wù)的不斷拓展,工作時間也呈現(xiàn)了“高碎片化”。員工需要通過手機(jī)App隨時隨地的進(jìn)行事務(wù)處理和生產(chǎn)數(shù)據(jù)查詢,本文介紹了近年較為流行且思路成熟的Hybrid技術(shù),對界面設(shè)計優(yōu)化、網(wǎng)絡(luò)數(shù)據(jù)傳輸模式、安全性、數(shù)據(jù)離線存儲等方面開展深入研究,結(jié)合油田企業(yè)實際需求,設(shè)計開發(fā)了基于Android及Ios雙平臺的現(xiàn)場信息管理系統(tǒng),為企業(yè)基層作業(yè)信息的高效填報提供可靠技術(shù)手段,并以《移動端作業(yè)現(xiàn)場信息管理平臺》為例進(jìn)行了簡要探討,提出了自己的一些見解與建議。
關(guān)鍵詞:移動辦公;Hybrid技術(shù);數(shù)據(jù)離線存儲;作業(yè)現(xiàn)場信息
中圖分類號:TP311? ? ? 文獻(xiàn)標(biāo)識碼:A
文章編號:1009-3044(2021)10-0240-02
Hybrid技術(shù),即移動端混合開發(fā)技術(shù),智能手機(jī)功能越來越豐富,對于員工來說,手機(jī)已不局限于發(fā)短信和語音通話,移動辦公已成為油田最重要的辦公管理模式。但基層隊的目前各項數(shù)據(jù)管理資料,還處于基層手動抄寫、上級現(xiàn)場檢查方式。為提升統(tǒng)計查詢效率及數(shù)據(jù)管理質(zhì)量,企業(yè)也在部署相關(guān)作業(yè)現(xiàn)場資料管理系統(tǒng)。以往移動端軟件,多采用Java原生語言方式開發(fā)安卓程序,而Java語言具有學(xué)習(xí)成本高、學(xué)習(xí)周期長等缺點,所以在油田軟件開發(fā)過程中,學(xué)習(xí)掌握混合開發(fā)模型將成為未來趨勢。應(yīng)用Hybrid混合開發(fā)框架,會更加容易實現(xiàn)流程化數(shù)據(jù)采集、數(shù)據(jù)離線存儲等業(yè)務(wù)需求,通過對數(shù)據(jù)壓縮加密傳輸、Sqlite數(shù)據(jù)庫接入、跨平臺兼容等方面研究,為企業(yè)移動端開發(fā)提供全新的技術(shù)思路和方向。
1 Hybrid技術(shù)框架在油田開發(fā)中的優(yōu)勢
近年較為流行且思路成熟的APP軟件開發(fā)模式共有三種方式:分別是Native APP(原生開發(fā)模式),WebH5 APP(手機(jī)端H5網(wǎng)頁模式),Hybrid APP(Hybrid混合開發(fā)模式)。
原生開發(fā)模式:Java語言是開發(fā)移動端的常用方式,作為曾經(jīng)傳統(tǒng)核心主流開發(fā)模式,優(yōu)點是程序運行速度快、穩(wěn)定性好、與手機(jī)內(nèi)相關(guān)硬件(相機(jī)、GPS、陀螺儀)完美交互,對影音圖像及動畫效果渲染處理非常流暢,擁有系統(tǒng)級別的權(quán)限推送。而缺點是開發(fā)語言學(xué)習(xí)周期過長,對軟件人員編程能力需求很高,需要程序開發(fā)者有較強(qiáng)的開發(fā)功底,這種開發(fā)模式對于IOS、Android 等不同的手機(jī)操作系統(tǒng)需要使用不同的程序設(shè)計語言和框架進(jìn)行開發(fā)。程序更新迭代及團(tuán)隊協(xié)作開發(fā)進(jìn)度慢。
手機(jī)端H5網(wǎng)頁開發(fā)模式:主要開發(fā)語言為Html5及Css,優(yōu)點是語言簡單易學(xué),開發(fā)成本低,不需要用戶安裝APP,與電腦端網(wǎng)站類似,通過手機(jī)瀏覽器直接訪問程序,軟件版本發(fā)布只需要更新服務(wù)器端,可以實現(xiàn)雙平臺同步兼容使用。雖然有H5的支持,但無法充分的調(diào)用移動設(shè)備的底層硬件,部分界面以及操作體驗相對較差,對網(wǎng)絡(luò)和流量速度的依賴性較高,更無法完成手機(jī)端離線數(shù)據(jù)存儲的增刪改查。
Hybrid混合開發(fā)模式,手機(jī)APP采用當(dāng)前流行的編程框架,前臺界面遵循H5開發(fā)思路,服務(wù)器端采用.Net處理數(shù)據(jù),隨著Jquery Mobile,Angular UI、Vue各種移動端Js開源封裝插件的崛起,給予前端訪問操作原生資源的無限可能,將 Web中Html等靜態(tài)資源與原生框架緊密連接在一起,并達(dá)到跨平臺目的。缺點是軟件表現(xiàn)力仍受限于網(wǎng)速的快慢,但隨著 4G 網(wǎng)絡(luò)的高速發(fā)展,目前除對畫質(zhì)有高渲染需求的軟件外,互聯(lián)網(wǎng)市場80%軟件都采用Hybrid技術(shù)開發(fā)手機(jī)端,該模式具有開發(fā)周期短、效率高、跨平臺兼容、版本代碼迭代快等優(yōu)點,通過結(jié)合原生 App 和 H5框架優(yōu)勢,用強(qiáng)大的UI視覺設(shè)計帶來更高的用戶黏度,非常利于新業(yè)務(wù)或者功能模塊迭代升級。用最小的開發(fā)學(xué)習(xí)成本,做到接近于原生App的用戶體驗。企業(yè)基層軟件一般采集數(shù)據(jù)眾多,采集數(shù)據(jù)及周期不固定,在企業(yè)移動端快速推進(jìn)部署的形勢下,采用Hybrid混合開發(fā)框架完成手機(jī)端高效開發(fā)將成為今后手機(jī)端開發(fā)主流方式。企業(yè)內(nèi)信息管理平臺繁雜、系統(tǒng)待采集數(shù)據(jù)量多、采集數(shù)據(jù)及周期不固定,并需要根據(jù)作業(yè)新業(yè)務(wù)需求不斷拓展升級,所以選用了Hybrid混合開發(fā)技術(shù)來完成移動端開發(fā)。
2 Hybrid框架的界面設(shè)計優(yōu)化思路
Hybrid存在著強(qiáng)大的前臺語言,開發(fā)人員設(shè)計手機(jī)端展示界面,就像設(shè)計網(wǎng)頁端門戶一樣,可采用任意網(wǎng)站開發(fā)工具,例如Dreamweaver、Hbuilder、Visual Studio等。通過Html5及Css的引入,軟件界面更為美觀,系統(tǒng)界面布局表現(xiàn)力非常豐富。
原生App一般采用多級折疊的方式展現(xiàn)各菜單頁面。Hybrid在 UI設(shè)計界面時,對軟件界面進(jìn)行高度加工,用一個簡單頁面展示系統(tǒng)內(nèi)的所有功能,消除過多菜單切換按鍵??紤]到用戶視覺效果體驗及手指在移動設(shè)備上觸控范圍,一般采用九宮格陣列設(shè)計UI效果最佳。若應(yīng)用超過一個頁面,可采用 UIPageControl控件實現(xiàn)上下翻頁。員工可根據(jù)個人常用情況將各功能排序添加至九宮格中,使軟件平臺更為簡潔明快、方便易用。
3 Hybrid數(shù)據(jù)傳輸模式及安全性探討
傳統(tǒng)的軟件APP一般采用將WebService服務(wù)部署到公共區(qū)完成數(shù)據(jù)的內(nèi)外網(wǎng)穿透,通過Xfire框架生成Webservice并發(fā)布參數(shù),再通過Ksoap框架接受傳遞過來的信息,實現(xiàn)軟件跨平臺、跨語言、跨技術(shù)的操作。
而Hybrid數(shù)據(jù)傳輸模式,客戶端與服務(wù)端數(shù)據(jù)交互多采用HttpPost協(xié)議,由服務(wù)端提供接口,客戶端按照接口定義將手機(jī)錄入采集的數(shù)據(jù)傳遞給服務(wù)端,JS語言中間層作為兩者數(shù)據(jù)溝通的橋梁。在服務(wù)端接到Ajax數(shù)據(jù)請求后,按照系統(tǒng)業(yè)務(wù)邏輯需求進(jìn)行歸納計算,最終返回Json格式數(shù)據(jù)至客戶端,手機(jī)前臺界面根據(jù)返回值做相應(yīng)的數(shù)據(jù)填充。Hybrid模式把所有數(shù)據(jù)計算集中于服務(wù)器端,手機(jī)客戶端只做數(shù)據(jù)呈現(xiàn)和用戶觸摸指令交互處理,使手機(jī)性能為軟件發(fā)揮至最佳狀態(tài),加快系統(tǒng)運行速度,有效減少系統(tǒng)卡頓,避免大數(shù)據(jù)流通訊導(dǎo)致手機(jī)端進(jìn)程崩潰、反饋遲滯。
在Hybrid模式下也需時刻注意數(shù)據(jù)的安全性,例如常見的用戶賬號密碼登錄模塊,需將手機(jī)端輸入的賬號密碼傳入服務(wù)器中,由服務(wù)器端比對處理,如果所輸入的密碼和數(shù)據(jù)庫一致,則返回一個參數(shù),如果不一致,返回另一個標(biāo)識參數(shù)。如果直接將數(shù)據(jù)庫密碼返回至手機(jī)端,由手機(jī)端進(jìn)行密碼比對工作,易被他人利用系統(tǒng)漏洞進(jìn)行注入攻擊。此外,平臺數(shù)字簽名密鑰的引入,前臺代碼的壓縮加固,信息傳輸握手令牌Token、MD5加密、白名單的使用,使Hybrid數(shù)據(jù)傳輸模式穩(wěn)固可靠。
4 基于Sqlite的手機(jī)離線數(shù)據(jù)存儲實現(xiàn)
考慮到服務(wù)器可能由于極特殊原因發(fā)生故障,為了提升處理服務(wù)器突發(fā)事件的能力,保證服務(wù)器恢復(fù)時的數(shù)據(jù)補錄上傳,需要在手機(jī)平板上離線存儲一定天數(shù)的資料數(shù)據(jù)。同時,某些填報APP還需要前一日的數(shù)據(jù)自動展示及各項信息比對,這些常用功能需要在手機(jī)平板內(nèi),實現(xiàn)本地數(shù)據(jù)存儲,在手機(jī)應(yīng)用程序開發(fā)中,都需引入適合安卓系統(tǒng)的輕量級便捷式數(shù)據(jù)庫Sqlite.
Sqlite另外一個重要的作用,可在手機(jī)端內(nèi)可將某些頁面信息進(jìn)行計算,并將大量數(shù)據(jù)結(jié)果存在本地Sqlite中,供其他頁面查詢訪問,避免冗余數(shù)據(jù)的重復(fù)錄入計算。使用本地Sqlite數(shù)據(jù)庫也可節(jié)省很多流量資源,在作業(yè)現(xiàn)場管理平臺中,將常用的數(shù)據(jù)選項字典,同步存儲在手機(jī)存儲內(nèi),這樣不僅可以減少對Oracle數(shù)據(jù)庫頻繁訪問,并在包月數(shù)據(jù)流量有限的條件下,最大限度地節(jié)省了資源成本。
5 Hybrid開發(fā)技術(shù)的重點項目應(yīng)用及效果
基層作業(yè)隊的大多數(shù)管理資料,仍以人工抄寫為主,部分?jǐn)?shù)據(jù)查詢統(tǒng)計上報效率低、強(qiáng)度大、錯誤率高,并耗費了大量紙張。通過開發(fā)移動端作業(yè)信息采集平臺,進(jìn)一步實現(xiàn)作業(yè)系統(tǒng)的無紙化辦公,減輕作業(yè)現(xiàn)場資料填寫工作量,有效的提升前線作業(yè)隊工作效率。結(jié)合內(nèi)部與外部作業(yè)隊的實際需求,對系統(tǒng)的功能需求進(jìn)行分析,梳理各類手抄報表,明確平臺基本業(yè)務(wù)需求及數(shù)據(jù)架構(gòu),建立了基于Hybrid混合開發(fā)框架技術(shù)的作業(yè)現(xiàn)場信息高效采集平臺。
該平臺移動端“多選項少填寫”的采集模式,需要大量數(shù)據(jù)字典支持,平臺采用了以電腦端構(gòu)建數(shù)據(jù)字典,并支持?jǐn)?shù)據(jù)的批量全文本粘貼及Excel導(dǎo)入。作業(yè)現(xiàn)場資料一般有常用的固定手寫模板,資料員將相關(guān)采集信息逐條固化為數(shù)據(jù)字典進(jìn)行一次性導(dǎo)入后,前線作業(yè)工在平板上進(jìn)行數(shù)據(jù)字典同步,即可采取在線或離線方式錄取資料。在選擇固定模板后,僅需把幾個不常用的信息錄入即可,有效地縮短了前線員工采集錄取資料時間。
在點擊手機(jī)桌面圖標(biāo)后,系統(tǒng)進(jìn)行初始化后進(jìn)入登錄頁面,通過認(rèn)證賬號密碼及手機(jī)Imei碼進(jìn)行授權(quán)登錄,輸入正確的賬號密碼且識別設(shè)備編號后方可登錄。登錄成功后,可在菜單Menu中切換各個頁面,切換新頁面的同時,關(guān)閉舊頁面及時釋放手機(jī)內(nèi)存,系統(tǒng)根據(jù)用戶登錄ID從服務(wù)器獲取相應(yīng)級別訪問權(quán)限的Json數(shù)據(jù)信息,并根據(jù)選擇設(shè)定的填報日期獲取查詢所需數(shù)據(jù)。
6 總結(jié)
作業(yè)現(xiàn)場信息綜合管理平臺,為企業(yè)作業(yè)管理部門、基層作業(yè)隊提供了一個移動端無紙化辦公環(huán)境,通過更為快捷的選項填報采集模式,替代紙質(zhì)資料的人工抄寫,降低作業(yè)系統(tǒng)紙張消耗并形成電子存檔,有效減輕作業(yè)工現(xiàn)場資料填寫工作量,為作業(yè)現(xiàn)場相關(guān)信息的統(tǒng)計和查詢工作中提供了方便,在提高前線作業(yè)隊的工作效率方面具有積極意義。移動端軟件簡潔易用,能夠滿足數(shù)據(jù)采集的時效性、完整性、準(zhǔn)確性要求。通過實施現(xiàn)場資料網(wǎng)絡(luò)化管理,將手抄資料時間,從90分鐘縮短至40分鐘,強(qiáng)化提升了現(xiàn)場資料管理水平,能夠滿足作業(yè)現(xiàn)場數(shù)據(jù)采集全過程無紙化要求。通過建立統(tǒng)一的邏輯架構(gòu)及數(shù)據(jù)處理模型,也為今后作業(yè)領(lǐng)域開展大數(shù)據(jù)分析提供強(qiáng)有力支撐。
另外,通過將Hybrid技術(shù)應(yīng)用于移動端軟件,根據(jù)企業(yè)的內(nèi)外網(wǎng)環(huán)境完成部署,現(xiàn)已形成相對完整的Hybrid數(shù)據(jù)流讀寫模式,手機(jī)端采用了更為易學(xué)且更多人熟知的編程語言開發(fā),為企業(yè)計算機(jī)人員學(xué)習(xí)手機(jī)端開發(fā)提供了一條更為易學(xué)的捷徑。利用Hybrid的編程優(yōu)勢,可以實現(xiàn)一套代碼多端系統(tǒng)兼容使用,為移動端高效開發(fā)應(yīng)用提供可靠技術(shù)手段。在今后的開發(fā)過程中,要更進(jìn)一步的節(jié)省手機(jī)流量及存儲空間,不斷實現(xiàn)企業(yè)信息交流的“標(biāo)準(zhǔn)化、規(guī)范化、流程化”目標(biāo)。
參考文獻(xiàn):
[1] 魏穎琪,林瑋平,楊少龍.移動終端應(yīng)用軟件開發(fā)技術(shù)探討[J].電信科學(xué),2013,29(5):11-18.
[2] 施偉.跨平臺移動應(yīng)用中間適配層設(shè)計與實現(xiàn)[J].信息通信,2014,5(11):39-41.
[3] 張磊.基于Android平臺的應(yīng)用開發(fā)研究[J].計算機(jī)光盤軟件與應(yīng)用,2011(17):211.
[4] 陳勇.WebApp現(xiàn)狀分析及展望[J].通信與信息技術(shù),2012(4):77-78.
[5] 馮明.基于混合模式(Hybrid App)移動終端設(shè)計的方法[J].數(shù)字技術(shù)與應(yīng)用,2015(4):148-149,151.
【通聯(lián)編輯:唐一東】