彭 栩,李永忠,陳 銳
(江蘇科技大學(xué) 計(jì)算機(jī)科學(xué)與工程學(xué)院,江蘇 鎮(zhèn)江212003)
Android 平臺(tái)下智慧校園移動(dòng)客戶端的設(shè)計(jì)與實(shí)現(xiàn)
彭 栩,李永忠,陳 銳
(江蘇科技大學(xué) 計(jì)算機(jī)科學(xué)與工程學(xué)院,江蘇 鎮(zhèn)江212003)
為滿足現(xiàn)階段信息化校園建設(shè)的實(shí)際需求,本文提出了一個(gè)基于Android平臺(tái)的智慧校園移動(dòng)客戶端的設(shè)計(jì)方案,并實(shí)現(xiàn)了該方案。該方案的設(shè)計(jì)思想是基于DCI框架,結(jié)合Android體系自身的特點(diǎn),實(shí)現(xiàn)了信息公開、圖書管理、個(gè)人信息管理等主要功能,滿足了目前移動(dòng)應(yīng)用系統(tǒng)中日益頻繁的人機(jī)交互的需求。本系統(tǒng)最后通過在不同條件下的實(shí)際測(cè)試,驗(yàn)證了設(shè)計(jì)方法的實(shí)用性與可靠性,達(dá)到了設(shè)計(jì)目的。
Android系統(tǒng);智慧校園;MVC;DCI
信息化校園建設(shè)[1-2]主要是指通過協(xié)同方法,對(duì)現(xiàn)有校園網(wǎng)絡(luò)資源進(jìn)行規(guī)劃,并且利用最新科技成果,為廣大師生提供較為便捷的服務(wù)。由于科技是不斷進(jìn)步的,因此信息化校園建設(shè)的步伐也是從未停止過。為了加快校園信息化建設(shè),不僅要整合傳統(tǒng)校園網(wǎng)絡(luò)資源,更要應(yīng)用最新科技成果,提高服務(wù)質(zhì)量。
由于近年來智能終端的飛速發(fā)展,移動(dòng)平臺(tái)正在變成信息化校園建設(shè)中非常重要的組成部分[3]。Android操作系統(tǒng)以其開源特性,以及隨著移動(dòng)終端的迅速普及,已經(jīng)成為全球范圍內(nèi)最大智能終端操作系統(tǒng)[4]。因此,通過對(duì)基于Android平臺(tái)的智慧校園移動(dòng)客戶端的研究,將會(huì)大大促進(jìn)信息化校園建設(shè)的步伐[5]。
相比較其之前的其他平臺(tái),Android平臺(tái)的設(shè)計(jì)具有了更加強(qiáng)大的容錯(cuò)能力?;贏ndroid操作系統(tǒng)的智能移動(dòng)終端實(shí)際上是運(yùn)行在Linux操作系統(tǒng)下的,如圖1所示。這使得在該操作系統(tǒng)上運(yùn)行的安卓應(yīng)用具有更強(qiáng)的安全性。由于Android應(yīng)用程序是在虛擬機(jī)(virtual machine)中運(yùn)行,Android應(yīng)用程序僅僅起到了托管代碼的作用,因而基本不會(huì)發(fā)生由于應(yīng)用程序的錯(cuò)誤運(yùn)行而導(dǎo)致系統(tǒng)崩潰,降低了設(shè)備崩潰的可能性[6]。
圖1 Android框架
Android的系統(tǒng)構(gòu)架采用了分層構(gòu)架的思想,主要包括應(yīng)用程序?qū)?、?yīng)用框架層、系統(tǒng)庫和Linux內(nèi)核。作為智慧校園的移動(dòng)客戶端[5],主要涉及Android系統(tǒng)框架的應(yīng)用層框架和應(yīng)用程序?qū)?。通過對(duì)該層的研究,可以更加深刻地了解安卓應(yīng)用開發(fā)的原理。
通過提供開放的開發(fā)平臺(tái),Android使開發(fā)者能夠編制極其豐富和新穎的應(yīng)用程序。開發(fā)者可以自由地利用設(shè)備硬件優(yōu)勢(shì)、訪問位置信息、運(yùn)行后臺(tái)服務(wù)、設(shè)置鬧鐘、向狀態(tài)欄添加通知等等,很多很多。開發(fā)者可以完全使用核心應(yīng)用程序所使用的框架APIs。應(yīng)用程序的體系結(jié)構(gòu)旨在簡化組件的重用,任何應(yīng)用程序都能發(fā)布他的功能且任何其他應(yīng)用程序可以使用這些功能(需要服從框架執(zhí)行的安全限制)。所有的應(yīng)用程序其實(shí)是一組服務(wù)和系統(tǒng),包括:視圖(View)、內(nèi)容提供者(Content Providers)、資源管理器(Resource Manager)、通知管理器(NotificationManager)、活動(dòng)管理器(ActivityManager)。
2.1智慧校園移動(dòng)客戶端的需求分析
隨著校園信息化建設(shè)步伐的加快以及移動(dòng)通信技術(shù)的發(fā)展,傳統(tǒng)的基于PC端的校園信息系統(tǒng)[6]已經(jīng)不能滿足人們對(duì)信息獲取以及信息處理的需求。通過基于Android平臺(tái)的智慧校園移動(dòng)客戶端的設(shè)計(jì)開發(fā),可以有效地解決以下問題:
① 全校數(shù)據(jù)缺乏統(tǒng)一規(guī)范,沒有形成統(tǒng)一數(shù)據(jù)標(biāo)準(zhǔn);
②“信息孤島嚴(yán)重”,無法實(shí)現(xiàn)數(shù)據(jù)的實(shí)時(shí)共享;
③缺乏全校數(shù)據(jù)的集中展示與個(gè)性化服務(wù);
④ 個(gè)人信息管理分散,不便于學(xué)生查詢各項(xiàng)信息;
⑤多重身份和密碼體系,師生使用方便性不夠。
2.2總體構(gòu)架設(shè)計(jì)
一個(gè)完整的移動(dòng)智慧校園系統(tǒng)需要包括數(shù)據(jù)庫、服務(wù)器、數(shù)據(jù)網(wǎng)絡(luò)以及移動(dòng)終端,總體的設(shè)計(jì)框架如圖2所示。
圖2 總體設(shè)計(jì)框架
然而,現(xiàn)階段的校園網(wǎng)絡(luò)資源較為分散,校園各個(gè)部門工作獨(dú)立進(jìn)行,這種情況大大阻礙了信息化校園建設(shè)。當(dāng)然,學(xué)校也在努力改變這種狀況,引進(jìn)了一體化服務(wù)平臺(tái)??紤]到實(shí)際情況,如果現(xiàn)階段直接整合傳統(tǒng)校園信息系統(tǒng)中各部分資源,將會(huì)耗費(fèi)較大的人力物力,并且會(huì)影響現(xiàn)階段教學(xué)等各方面工作的開展。因此,可以通過智慧校園移動(dòng)終端來整合傳統(tǒng)資源。
鑒于現(xiàn)階段校園無線網(wǎng)絡(luò)基礎(chǔ)設(shè)施建設(shè)并不完善,總體設(shè)計(jì)中網(wǎng)路連接部分將采用Internet網(wǎng)絡(luò)來實(shí)現(xiàn)數(shù)據(jù)交換。然而,由于部分校園網(wǎng)絡(luò)資源必須要通過校內(nèi)局域網(wǎng)絡(luò)接入才具有訪問權(quán)限,例如圖書館中的數(shù)字資源。因而本設(shè)計(jì)中通過Internet接入校園網(wǎng)絡(luò)則無法訪問,為解決此問題,將會(huì)在校園客戶端中添加VPN[7]訪問機(jī)制,以豐富移動(dòng)端訪問內(nèi)容。
2.3系統(tǒng)構(gòu)架設(shè)計(jì)
傳統(tǒng)的軟件設(shè)計(jì)框架[4]是基于上個(gè)世紀(jì)八十年代提出的MVC(Model View Controller模型-視圖-控制器)框架模型[8]。
然而,對(duì)于傳統(tǒng)的MVC構(gòu)架,因其本質(zhì)是一個(gè)結(jié)構(gòu)模式,相對(duì)于行為模式來說比較固定[6]。隨著軟件需求的不斷變化,相對(duì)靜態(tài)的MVC模式已經(jīng)不能適應(yīng)大量頻繁交互應(yīng)用的需求了[9]。因此,新的基于行為模式準(zhǔn)則的框架結(jié)構(gòu)被提出,即 DCI模式[10-12]。
所謂DCI模式,即數(shù)據(jù)Data、場景Context、交互Interactions的簡稱。DCI模式是一種特別關(guān)注行為的模式,該模式更符合面向?qū)ο蟮乃枷?,從而具有更加廣闊的應(yīng)用前景。圖2所示為MVC模式與DCI模式的區(qū)別。
DIC模式主要內(nèi)容為:
①數(shù)據(jù)(Data):領(lǐng)域?qū)ο笾写眍I(lǐng)域概念;
② 場景context:根據(jù)需要將對(duì)象實(shí)例調(diào)用到實(shí)際需求場景中;
③ 交互interactions:主要指描述控制用戶與軟件實(shí)際交互的算法。
DCI架構(gòu)的核心是Context,場景是角色參與具體業(yè)務(wù)活動(dòng)的表現(xiàn)[13-14],如圖3所示:
圖3 DCI構(gòu)架核心
3.1客戶端工作流程設(shè)計(jì)
通過對(duì)上述DCI框架模式的分析和應(yīng)用,對(duì)智慧校園移動(dòng)客戶端的框架、模塊組成、界面顯示、網(wǎng)絡(luò)連接等方面進(jìn)行實(shí)際開發(fā),當(dāng)用戶啟動(dòng)智慧校園移動(dòng)客戶端時(shí),應(yīng)用會(huì)先判斷用戶是否是初次啟動(dòng)客戶端,若是則進(jìn)入引導(dǎo)界面,若不是則直接進(jìn)入主界面。當(dāng)用戶進(jìn)入主界面后,由于數(shù)據(jù)交換的需求,系統(tǒng)會(huì)對(duì)客戶端當(dāng)前的網(wǎng)絡(luò)狀態(tài)進(jìn)行檢測(cè)。當(dāng)無網(wǎng)絡(luò)連接時(shí),會(huì)提示用戶連接網(wǎng)絡(luò),有網(wǎng)絡(luò)情況下則可以直接訪問各個(gè)模塊。
3.2客戶端功能模塊設(shè)計(jì)與實(shí)現(xiàn)
所設(shè)計(jì)的客戶端包括將會(huì)校園信息公開、校園新聞、學(xué)生課表查詢、學(xué)生成績查詢、圖書館、校園風(fēng)采、個(gè)人信息查看及管理、校園跳蚤市場、校園黃頁等9個(gè)模塊,如圖4所示。
圖4 客戶端模塊設(shè)計(jì)
網(wǎng)絡(luò)連接正常的情況下,當(dāng)用戶點(diǎn)擊信息公開、校園新聞、校園風(fēng)采等模塊時(shí),因?yàn)橹皇菃我坏膹姆?wù)器獲取信息,該部分不要用戶登錄。當(dāng)用戶點(diǎn)擊課表查詢、成績查詢以及圖書館等模塊時(shí),將會(huì)檢測(cè)用戶登錄狀態(tài),如果已登錄,則可直接瀏覽內(nèi)容,若未登錄,則會(huì)跳轉(zhuǎn)到登陸界面,用戶需要從登陸界面登錄。當(dāng)點(diǎn)擊底部欄的首頁和應(yīng)用按鈕時(shí),可在首頁和應(yīng)用之間進(jìn)行切換。客戶端主界面顯示效果以及功能界面顯示效果如圖5所示,主要展示了校園新聞模塊以及圖書館的檢索功能模塊。
圖5 客戶端顯示界面
3.3應(yīng)用測(cè)試
本應(yīng)用基本功能實(shí)現(xiàn)以后,通過Eclipse將源程序文件打包成Android系統(tǒng)運(yùn)行的APK程序,然后通過不同環(huán)境進(jìn)行檢測(cè),檢測(cè)結(jié)果如表1所示,達(dá)到了預(yù)期的結(jié)果。
表1 客戶端測(cè)試結(jié)果
文中通過明確基于Android平臺(tái)的智慧校園的設(shè)計(jì)要求,研究了MVC和DCI兩種不同的軟件設(shè)計(jì)框架,通過對(duì)兩者的比較得出DCI的優(yōu)點(diǎn),并將DCI應(yīng)用到客戶端的設(shè)計(jì)之中,實(shí)現(xiàn)了基于Android的智慧校園客戶端[15]。同時(shí),由于作者水平有限,該客戶端部分功能并未完全實(shí)現(xiàn),熱油許多不足之處。下一步工作即將就如何優(yōu)化DCI框架應(yīng)用、提高用戶體驗(yàn)以及更好地整合校園資源等方面進(jìn)行展開。
[1]胡欽太,鄭凱,林南暉.教育信息化的發(fā)展轉(zhuǎn)型:從“數(shù)字校園”到“智慧校園”[J].中國電化教育,2014(324):35-39.
[2]WEI Xian-min.Preliminary study of management information planning in digital campus construction[J].Procedia Engineering,2011,(15):505-509.
[3]鄭凱,許駿.高校移動(dòng)學(xué)習(xí)體系的構(gòu)建與發(fā)展研究[J].中國電化教育,2011(9):20-23.
[4]逯全芳.移動(dòng)智能終端安全評(píng)估技術(shù)研究及在Android平臺(tái)下的實(shí)現(xiàn)[D].成都:電子科技大學(xué),2014.
[5]Kwanghoon Choi,Byeong-Mo Chang.A lightweight approach to component-level exception mechanism for robust android apps[J].Computer Languages,Systems&Structures,2015,12(44)283-298.
[6]黃金明.面向虛擬教學(xué)實(shí)驗(yàn)室的虛擬機(jī)設(shè)計(jì)與實(shí)現(xiàn)[D].武漢:華中科技大學(xué),2007.
[7]徐家臻,陳莘萌.基于IPSec與基于SSL的VPN的比較與分析[J].計(jì)算機(jī)工程與設(shè)計(jì),2004:586-588.
[8]劉楠楠.MVC框架在軟件開發(fā)中的應(yīng)用研究[J].數(shù)字技術(shù)與應(yīng)用,2012(4):70.
[9]彭晨陽.MVC模式已死[EB/OL].(2010)[2010-04-09].http: //www.jdon.com/38448.
[10]Aurora Ramirez,Jose Raul Romero,Sebastian Ventura.An approach for the evolutionary discovery of software architectures[J].Original Research Article Information Sciences,2015(305):34-255.
[11]Hadi Parastar,Hamidreza Shaye,MVC app:A smartphone applicationforperformingchemometricmethods[J]. Chemometrics and Intelligent Laboratory Systems,2015 (147):105-110.
[12]譚宗威,劉振宇,陽小華,等.一種實(shí)現(xiàn)DCI架構(gòu)的方法[J].計(jì)算機(jī)技術(shù)與發(fā)展,2011,21(7):16-20.
[13]彭晨陽.使用qi4j實(shí)現(xiàn)DCI架構(gòu)[EB/OL].(2010)[2010-03-15].http://www.jdon.com/38266.
[14]Rong-Hua Li,Jeffrey Xu Yu,Xin Huang,et al.Measuring the impact of MVC attack in large complex networksOriginal Research Article[J].Information Sciences,2014(278):685-702.
[15]劉妮.基于Web服務(wù)的智能客戶端的研究與應(yīng)用[J].貴陽學(xué)院學(xué)報(bào):自然科學(xué)版,2010,5(3):35-38.
Design and implementation of the smart campus mobile client based on Android
PENG Xu,LI Yong-zhong,CHEN Rui
(School of Computer Science and Engineering,Jiangsu University of Science and Technology,Zhenjiang 212003,China)
To meet the practical demand of i-Campus construction,a smart campus mobile client design scheme under Android was proposed.The software is based on the DCI framework,combined Android system's own characteristics,realize the main functions of information disclosure,library management,personal information management,and meet the needs of the increasingly frequent interaction between human and computer in the mobile application system.At the end of this paper,the system is tested by the actual use on the different platforms and systems,the practicability and reliability of the design method are verified.
Android system;smart campus;MVC;DCI
TN301
A
1674-6236(2016)22-0080-03
2015-11-30稿件編號(hào):201511286
彭 栩(1989—),男,安徽六安人,碩士。研究方向:嵌入式系統(tǒng)及應(yīng)用。