文/郭宇光
近年來,隨著智能手機與互聯(lián)網(wǎng)的發(fā)展,移動應用變得愈加普及,企業(yè)都更加傾向選擇使用移動應用來進行企業(yè)日常辦公,以提高企業(yè)的效率并降低辦公成本。但傳統(tǒng)的移動應用模式在實際實施中存在著一些弊端,不能很好的滿足企業(yè)辦公的需求。因此本文將分析這些問題并提出一種移動門戶方案,以更好滿足企業(yè)移動應用在定制化、擴展性和集成性方面的高需求。
如圖1所示,由于技術限制,傳統(tǒng)移動應用在實施使用過程中存在一些弊端,表現(xiàn)在:
用戶難以定制化自己得移動應用功能,移動應用功能冗余過多。移動應用一般在安裝時就附帶了業(yè)務系統(tǒng)的全部功能,這使得移動應用很復雜,用戶被動安裝了很多自己用不到的功能。這樣用戶不易定位自己需要的功能,而當用戶尋找一個功能的時候,往往需要穿過多層菜單。
受傳統(tǒng)原生開發(fā)框架數(shù)據(jù)組織方式限制,移動應用更新過程復雜。傳統(tǒng)移動應用需要更新時,只能通過應用市場下載完整新版本移動應用安裝包或者借助移動應用自帶的熱更新下載代碼包,進行整體覆蓋安裝,頻繁更新將會導致用戶體驗變差。
移動應用擴展困難,在實際應用中,一個移動應用往往需要分批次地集成接入業(yè)務系統(tǒng),這使得原本不相干的業(yè)務系統(tǒng)之間也需要進行如用戶的同步、身份認證等集成工作。當移動應用需要升級擴展新的功能模塊時,除了移動應用的客戶端需要升級開發(fā)加入新功能,負責集成的移動服務也需要升級接入新的業(yè)務系統(tǒng)服務。由于需要對舊有移動應用和服務進行改造,當集成的業(yè)務系統(tǒng)很多時,移動應用前后端升級實施的周期和成本也會很高?,F(xiàn)實中,一些企業(yè)往往通過開發(fā)多個移動應用解決該問題,但是這種方案又會給移動應用的管理帶來更多困難。
目前市面上也有一些辦公軟件使用通過瀏覽器跳轉辦公網(wǎng)站的方式集成企業(yè)的各個辦公系統(tǒng),但由于需要頻繁拉取服務端網(wǎng)頁、圖片等資源,性能都較差,用戶體驗不好,也無法離線使用應用。并且這種移動門戶方式應用的功能受限于門戶應用的供應商,當移動應用需要擴展調(diào)用底層移動系統(tǒng)功能,如一些VPN的接入時,會難以實現(xiàn)。
以上這些傳統(tǒng)移動用用的弊端是由兩點技術限制導致的?;谙到y(tǒng)安全性、可靠性考慮,移動系統(tǒng)為移動應用提供了兩個不同的存儲區(qū),如圖2,分別是移動應用安裝時的只讀包空間和存儲數(shù)據(jù)用的可讀寫緩存空間。受原生開發(fā)框架限制,傳統(tǒng)原生移動應用默認將編譯后的業(yè)務邏輯程序段置于只讀包空間,運行中產(chǎn)生的用戶數(shù)據(jù)和下載的內(nèi)容存儲于可讀寫的緩存空間。而修改包空間的內(nèi)容只能通過覆蓋更新完整安裝包來進行,這導致基于傳統(tǒng)原生開發(fā)框架的移動應用安裝后就無法再更改業(yè)務邏輯。應用增加新功能時,整個移動應用只能被動進行完全重新安裝。
而在服務端,傳統(tǒng)單節(jié)點單集群的移動服務設計無法適應移動應用快速擴展的需求。這種移動后臺服務將移動應用運行時的功能如設備管理,身份認證等運行服務同系統(tǒng)集成服務耦合在一起。當有新的業(yè)務系統(tǒng)接入時,除了業(yè)務系統(tǒng)的接口開發(fā)工作,開發(fā)商還需要在移動服務端進行這些接口的集成和改造。所以必須設計一種將移動運行服務同系統(tǒng)集成服務分離開的移動系統(tǒng)來解決這個問題。
針對這些企業(yè)移動應用實施中的困難,本文提出了一種新的移動門戶系統(tǒng)解決這些問題。
移動門戶是提供用戶個性化定制移動應用功能,管理各業(yè)務辦公系統(tǒng)接入,并監(jiān)控各應用、服務狀態(tài)的管理軟件。微應用是依賴于移動門戶,可以被用戶自行安裝、升級、卸載的應用功能模塊。
系統(tǒng)總體架構如圖3所示。
該移動門戶應用系統(tǒng)主要由移動門戶客戶端和移動門戶服務端組成,業(yè)務系統(tǒng)的接入則是通過可擴展的移動網(wǎng)關服務實現(xiàn)。
圖1:傳統(tǒng)移動應用架構下的應用的升級
圖2:傳統(tǒng)移動應用存儲的組織方式
為了打破客戶端包空間的只讀限制,該移動門戶系統(tǒng)將業(yè)務邏輯部分按照功能模塊分解為多個微應用,并將其與移動門戶核心功能分別打包,以動態(tài)鏈接庫或者html5文件的方式存儲。通常情況下,移動門戶內(nèi)核存儲于包空間,當應用首次運行時,移動門戶的內(nèi)核被從包空間復制到緩存空間。應用啟動時,一小段包空間的啟動程序直接加載啟動緩存空間的移動門戶內(nèi)核,內(nèi)核中包含了微應用的管理、首頁模塊、應用設置等移動應用運行核心功能;而微應用初始存儲于移動門戶服務端,用戶可以通過移動門戶內(nèi)核的微應用下載模塊選擇自己需要的微應用進行安裝。新安裝的微應用也存放于緩存空間,其對應的服務地址等信息存入移動門戶的配置文件。在這個系統(tǒng)中,移動應用首頁的功能也可以進行動態(tài)的設置,用戶可以使用微應用和移動門戶內(nèi)核提供的各種小工具拼裝自己的應用首頁?;谠摽蛻舳丝蚣?,移動門戶應用的業(yè)務邏輯程序都存儲運行于移動設備的可讀寫緩存空間,移動門戶可以在不進行完全覆蓋安裝的前提下在運行期隨時變更這些程序。
在服務端,該移動門戶系統(tǒng)的服務端提供了一種可彈性擴展的移動運行服務,如圖4。這種服務可以將移動應用運行需要的功能同業(yè)務系統(tǒng)集成服務獨立出來。當新的業(yè)務系統(tǒng)接入時,只需要部署獨立的移動接入服務,再將該服務對應的微應用上傳到移動門戶服務端,就可以完成新的業(yè)務系統(tǒng)接入,這個過程不會對已經(jīng)運行的其他業(yè)務服務產(chǎn)生影響。
同傳統(tǒng)移動應用比較,本文提出的移動門戶系統(tǒng)有如下優(yōu)點:
安裝更加輕量化,在移動門戶系統(tǒng)中,僅有移動門戶內(nèi)核是必要的安裝組件,其他微應用組件均可在用戶使用中自行安裝。
應用升級方便,用戶體驗好。當微應用或者移動門戶內(nèi)核的功能需要升級調(diào)整時,門戶應用只需更新需要升級的微應用即可,不會對其他微應用產(chǎn)生影響,也不會對無關用戶產(chǎn)生影響。
圖3:移動門戶總體架構
圖4:移動門戶整體部署
通過移動門戶系統(tǒng)提供的微應用市場,用戶可以按照權限瀏覽下載各種自己需要的微應用,并根據(jù)微應用提供的首頁組件,按照自己的習慣組合移動門戶的首頁區(qū)域,顯著提高使用移動應用的體驗。
應用響應更快,體驗更好。由于微應用的界面、業(yè)務邏輯、圖片等資源都存儲于用戶的手機本地,因此微應用響應很快,接近原生移動應用體驗,同時也支持部分移動應用離線使用的需要。
在系統(tǒng)集成方面,該系統(tǒng)顯著減輕了業(yè)務系統(tǒng)集成工作量。當移動應用需要擴展新功能接入新的業(yè)務系統(tǒng)時,僅需要部署新的移動接入服務并將其關聯(lián)的微應用注冊到移動門戶系統(tǒng)后臺即可,不再需要對舊有的業(yè)務系統(tǒng)升級開發(fā),大幅度提高了集成效率,減少了開發(fā)周期和開發(fā)成本。
本文提出的移動門戶系統(tǒng)是一種定制化高、擴展性好、集成快速的移動應用系統(tǒng),同時具備部署簡單,開發(fā)周期短、成本低等特點,可以很好滿足企業(yè)辦公移動化需要。