羅會容,熊詩琪
(江漢大學(xué) 物理與信息工程學(xué)院,湖北 武漢 430056)
隨著移動互聯(lián)網(wǎng)的迅速發(fā)展以及智能手機的不斷普及,人們獲取信息的手段從電腦端迅速轉(zhuǎn)移到手機端。在高校里,大學(xué)生的智能手機更為普及,并且各高校都在建設(shè)智慧校園,學(xué)生和老師都習(xí)慣用智能手機在WiFi、4G 網(wǎng)絡(luò)等無線網(wǎng)絡(luò)模式下瀏覽信息[1-3]。但是,高校的網(wǎng)絡(luò)服務(wù)應(yīng)用都是基于PC端開發(fā)的,常常會有打開網(wǎng)頁慢、界面不友好等情況。因此,設(shè)計一個針對本校實際情況的校園APP很有必要。國內(nèi)已有部分學(xué)校正在使用校園APP,如北京師范大學(xué)的“掌上師大”、南京理工大學(xué)的“南理工助手”、浙江工業(yè)大學(xué)的“工大生活”、電子科技大學(xué)的“移動校園客戶端”等,這些校園APP 可以從各個方面滿足學(xué)生和老師獲取信息的需求。如今Android 系統(tǒng)憑借其開放性壟斷了智能手機的一大部分,基于Android 平臺的智能移動終端成為設(shè)計校園APP 的首選平臺[4-7]。
本文設(shè)計了一個基于Android 的實驗中心信息管理系統(tǒng),服務(wù)于省示范實驗中心,讓學(xué)生能隨時隨地查看信息,打破了原來只能從電腦端獲取信息的時間和空間局限。該應(yīng)用的主要功能有實驗室介紹、課表查詢、設(shè)備與環(huán)境、師資隊伍、課程設(shè)計、開放實驗、實驗教學(xué)大綱、競賽與創(chuàng)新和信息交流等。
實驗中心信息管理系統(tǒng)以江漢大學(xué)電工電子實驗中心為背景,借鑒以往的開發(fā)經(jīng)驗以及學(xué)生對實驗中心信息的需求進行設(shè)計。實驗中心信息管理系統(tǒng)功能結(jié)構(gòu)框圖如圖1 所示。
圖1 實驗中心信息管理系統(tǒng)功能結(jié)構(gòu)圖Fig.1 Structure of the experimental center information management system
(1)實驗室介紹:介紹了省級示范中心電工電子實驗中心的所有實驗室的信息,包括實驗室面積、設(shè)備、所承擔(dān)的課程以及開設(shè)的主要實驗項目。
(2)課表查詢:該功能可以按照實驗課程查詢,也可以查詢一學(xué)期的所有課表。
(3)設(shè)備與環(huán)境:通過此功能可以查看實驗室的所有設(shè)備信息,以及在實驗室的環(huán)境安全注意事項。
(4)師資隊伍:此功能可以看到實驗中心的成員信息、隊伍結(jié)構(gòu)以及成員的科學(xué)研究情況。
(5)課程設(shè)計:通過此功能可以查看某一學(xué)期的課程設(shè)計安排,包括時間、地點、指導(dǎo)老師以及課程設(shè)計內(nèi)容。
(6)開放實驗:電工電子實驗中心設(shè)置了開放性實驗,有興趣的學(xué)生可以通過此功能查看開放性實驗項目內(nèi)容并可以在此報名。
(7)實驗教學(xué)大綱:通過此功能可以查看所有實驗教學(xué)大綱的內(nèi)容。
(8)競賽與創(chuàng)新:通過此功能可以查看競賽資訊、學(xué)生往年獲獎情況、作品展示和信息交流。學(xué)生可以通過競賽資訊,提早參加競賽培訓(xùn),以提高競賽獲獎概率。
(9)信息交流:通過此功能學(xué)生有最新的信息以及在實驗和競賽中遇到的問題可以在這里交流討論。
實驗中心信息管理系統(tǒng)的開發(fā)總體采用MVC 框架[8],即模型Model、視圖View、控制器Controller,MVC 是框架設(shè)計中比較常見的一種模式。其工作原理是控制器將用戶的請求發(fā)送給模型,選擇對應(yīng)的模型;模型根據(jù)請求進行業(yè)務(wù)邏輯判斷做出相應(yīng)的處理,通知視圖改變;更新的視圖結(jié)果反饋給用戶。MVC 的框架結(jié)構(gòu)如圖2 所示。
圖2 MVC 的框架結(jié)構(gòu)Fig.2 Framework structure of MVC
本系統(tǒng)采用智能手機終端、無線網(wǎng)絡(luò)和校園服務(wù)器互聯(lián)的物理架構(gòu),實現(xiàn)實驗中心信息管理系統(tǒng)的功能應(yīng)用。系統(tǒng)的物理架構(gòu)如圖3 所示,裝有管理系統(tǒng)應(yīng)用的Android 智能手機發(fā)送請求,通過無線網(wǎng)絡(luò)訪問校園內(nèi)網(wǎng),獲取服務(wù)器里的數(shù)據(jù)。
圖3 系統(tǒng)物理架構(gòu)Fig.3 Physical architecture of system
設(shè)計采用Android Studio 3.0 環(huán)境,Android 系統(tǒng)是基于Linux 和JAVA 架構(gòu)的,主要編程語言是JAVA,所以需要先安裝JAVA 的編程工具JDK。在Oracle 官網(wǎng)選擇Windows 平臺下32 位的jdk-8u66-windows-i586 軟件,下載安裝并完成環(huán)境變量的配置,主要有JAVA_HOME、Path、CLASSPATH 三個部分的配置。接著安裝開發(fā)工具Eclipse 和Android SDK 并進行相應(yīng)配置,Android 開發(fā)環(huán)境搭建完畢[9]。
根據(jù)前面的需求分析,實驗中心信息管理系統(tǒng)設(shè)計了9 個模塊,分別是:實驗室介紹、課表查詢、設(shè)備與環(huán)境、師資隊伍、課程設(shè)計、開放實驗、實驗教學(xué)大綱、競賽與創(chuàng)新和信息交流。按照9 個功能對系統(tǒng)進行包規(guī)劃,包規(guī)劃的詳細說明如表1。
表1 系統(tǒng)包規(guī)劃Tab.1 System package planning
實驗中心信息管理系統(tǒng)的界面UI 的設(shè)計采用常用的XML 文件實現(xiàn),簡單明了,可以將視圖邏輯控制從JAVA 中分離出來,更好地體現(xiàn)MVC 結(jié)構(gòu)。本開發(fā)總體采用APP 常用的三段式結(jié)構(gòu),頂部為標(biāo)題,中間為內(nèi)容,底部為選擇按鈕,在activity_main 里面實現(xiàn)[10]。
主界面第一部分是頂欄的江漢大學(xué)?;蘸蛻?yīng)用名稱;第二部分是本應(yīng)用程序的9 個功能模塊,點擊模塊會進入相應(yīng)的界面,該部分為九宮格布局,將布局定位3 行3 列,在mainactivity.xml 文件里實現(xiàn);第三部分為底部切換導(dǎo)航欄,包含首頁即當(dāng)前顯示的中間部分內(nèi)容、登陸和設(shè)置。整個界面實現(xiàn)由View 實現(xiàn),關(guān)鍵代碼如下所示。最終的主界面和登錄界面分別如圖4(a)和圖4(b)所示。
圖4 (a)實驗中心的用戶主界面;(b)登錄界面Fig.4 (a)Main interface of the experiment center;(b)Login interface
實驗中心信息管理系統(tǒng)的實驗室介紹、課表查詢、設(shè)備與環(huán)境、師資隊伍、課程設(shè)計、開放實驗、實驗教學(xué)大綱等信息都是來自于江漢大學(xué)電工電子實驗中心網(wǎng)站。因此,實現(xiàn)各模塊的功能就是將對應(yīng)網(wǎng)頁進行解析并Android 化,解析網(wǎng)頁用到HTML 解析器。
HTML 解析器有JSON 技術(shù)和Jsoup 技術(shù)[11],一般安卓和服務(wù)端的數(shù)據(jù)通信采用JSON,需要有服務(wù)器的數(shù)據(jù),但這里只需要解析HTML 網(wǎng)頁的數(shù)據(jù),所以本文采用Jsoup。Jsoup 的工作原理是通過某個URL 地址或本地文件來加載HTML 文件,加載完成后生成一個Document 對象實例,接著通過CSS 或者DOM 選擇器對對象實例進行分析查找獲得需要的數(shù)據(jù),解析后得到的HTML 元素可以進行修改刪除等自定義操作??梢奐soup 具有強大的HTML 解析能力,可以將任意網(wǎng)頁“Android 化”,實現(xiàn)網(wǎng)站的安卓客戶端。網(wǎng)頁解析的關(guān)鍵代碼如下:
圖5 和圖6 分別是實驗室介紹界面和競賽與創(chuàng)新界面。圖7(a)是開放性實驗二級目錄開放實驗安排表解析的網(wǎng)頁顯示結(jié)果,采用表格的形式;圖7(b)是競賽與創(chuàng)新-競賽資訊-電子技術(shù)基礎(chǔ)與技能競賽解析的網(wǎng)頁顯示的內(nèi)容,包含文字和圖片相結(jié)合的部分,可以看到本應(yīng)用程序無論是文字、表格還是圖片都能非常準(zhǔn)確并以適應(yīng)手機屏幕最佳的形式解析出來。
圖5 實驗室介紹界面Fig.5 Laboratory introduction interface
圖6 競賽與創(chuàng)新界面Fig.6 Competition and innovation interface
實驗中心信息管理系統(tǒng)的測試是在榮耀9(EMUI 5.1)上進行的,EMUI 5.1 是在google 和Android7.0的基礎(chǔ)上做了深度優(yōu)化開發(fā)出來的系統(tǒng)。從安裝到各個界面的跳轉(zhuǎn),各個功能的實現(xiàn)情況進行了反復(fù)測試,測試過程重點關(guān)注系統(tǒng)的流暢性和穩(wěn)定性。經(jīng)測試,應(yīng)用滿足之前的設(shè)計需求,并且系統(tǒng)穩(wěn)定,界面跳轉(zhuǎn)流暢。
圖7 (a)開放實驗安排表;(b)網(wǎng)站解析后的界面Fig.7 (a)Schedule of open experiment;(b)Interface after website parsing
基于Android 的實驗中心信息管理系統(tǒng)滿足了學(xué)生隨時隨地查看實驗課表、實驗設(shè)備、實驗大綱、課程設(shè)計安排、開放實驗和競賽信息等要求,所有信息是以本校的電工電子實驗中心網(wǎng)站為依據(jù),將信息在手機端顯示,實現(xiàn)Android 化。本系統(tǒng)是以某一實驗中心設(shè)計的APP,具有良好的兼容性和動態(tài)擴展性,后續(xù)可以將其他專業(yè)實驗室網(wǎng)站信息進行整合,以適合全校各專業(yè)學(xué)生。