孫耀杰,李榮妹,張維文
(河北工業(yè)大學(xué) 信息工程學(xué)院,天津 300401)
移動(dòng)終端校園蹤跡分析系統(tǒng)研究
孫耀杰,李榮妹,張維文
(河北工業(yè)大學(xué) 信息工程學(xué)院,天津 300401)
隨著智能手機(jī)的普及,以及校園地理信息的龐大,實(shí)現(xiàn)手機(jī)與校園信息的對(duì)接,為學(xué)生提供一些實(shí)用的服務(wù)具有重要意義。針對(duì)這一需求,利用Android的智能終端、百度地圖開(kāi)發(fā)和校園地理信息,基于網(wǎng)絡(luò)實(shí)現(xiàn)了一種個(gè)性化校園服務(wù)系統(tǒng)??蛻舳藢?shí)現(xiàn)了定位設(shè)置、個(gè)性化校園設(shè)置、校園蹤跡記錄、系統(tǒng)蹤跡分析等功能,服務(wù)器端采用MVC模式實(shí)現(xiàn)智能查詢功能。通過(guò)測(cè)試該系統(tǒng)具有操作簡(jiǎn)單、實(shí)用性強(qiáng)、功能完善等優(yōu)點(diǎn),此外該系統(tǒng)還可以應(yīng)用到其他校園,具有可擴(kuò)展性。
Android智能終端;蹤跡記錄;百度定位;蹤跡分析;智能查詢
隨著移動(dòng)互聯(lián)網(wǎng)的發(fā)展,手機(jī)的傳輸速度越來(lái)越快,其所具備的功能也越來(lái)越多元化。Android作為一個(gè)以Linux為基礎(chǔ)的開(kāi)放源碼平臺(tái),具有較好的開(kāi)放性,擁有廣闊的硬件平臺(tái)和大量的用戶群體。Android平臺(tái)提供了豐富的開(kāi)發(fā)環(huán)境,包括設(shè)備模擬器、調(diào)試工具、內(nèi)存及性能分析圖表和Eclipse集成開(kāi)發(fā)環(huán)境插件,源源不斷地吸引著開(kāi)發(fā)者。隨著校園信息的不斷增加,實(shí)現(xiàn)手機(jī)與校園信息的對(duì)接,為學(xué)生提供一些實(shí)用的應(yīng)用和服務(wù)信息,將給校園生活帶來(lái)很大的便利。
從目前情況來(lái)看,國(guó)內(nèi)眾多高校都推出了相應(yīng)的校園位置服務(wù)等移動(dòng)應(yīng)用,但是和外國(guó)高校相比,存在起點(diǎn)晚、普及率低、功能不完備、缺乏協(xié)作等問(wèn)題。例如,哈佛大學(xué)、麻省理工學(xué)院等外國(guó)高校在2010年就相繼推出了官方移動(dòng)應(yīng)用,而國(guó)內(nèi)高校則在隨后的2011、2012年才開(kāi)始陸續(xù)發(fā)布校園移動(dòng)的應(yīng)用[1]。
本文所述系統(tǒng)利用百度地圖進(jìn)行二次開(kāi)發(fā),實(shí)現(xiàn)目標(biāo)定位。通過(guò)友好的用戶界面,使用戶實(shí)時(shí)了解自己所在位置,對(duì)一天的行蹤軌跡進(jìn)行追蹤和記錄,同時(shí)系統(tǒng)針對(duì)個(gè)人的生活軌跡給予相應(yīng)的評(píng)價(jià)。從而使學(xué)生更好地了解自己的生活與學(xué)習(xí)節(jié)奏,對(duì)學(xué)生產(chǎn)生自我監(jiān)督、自我激勵(lì)的效果,符合當(dāng)代大學(xué)生的需求。
1.1 系統(tǒng)實(shí)現(xiàn)方案
本系統(tǒng)是在Google Android平臺(tái)2.2版本環(huán)境下,使用Eclipse進(jìn)行開(kāi)發(fā)的[2]。
針對(duì)絕大部分學(xué)生使用安卓智能手機(jī)的現(xiàn)狀,同時(shí)校園無(wú)線網(wǎng)絡(luò)也得到廣泛的普及。因此,針對(duì)校園這一特定的環(huán)境做出系統(tǒng)開(kāi)發(fā)。充分利用網(wǎng)絡(luò),從位置服務(wù)器中得到關(guān)于目標(biāo)和位置的數(shù)據(jù)信息,并根據(jù)位置信息得到分析的數(shù)據(jù)源。系統(tǒng)框架如圖1所示。
圖1 系統(tǒng)框架圖
1.2 系統(tǒng)設(shè)計(jì)
該系統(tǒng)的客戶端利用百度地圖進(jìn)行二次開(kāi)發(fā),實(shí)現(xiàn)目標(biāo)定位。通過(guò)友好的用戶界面,使用戶實(shí)時(shí)了解自己所在的位置,對(duì)一天的行蹤軌跡進(jìn)行追蹤和記錄,同時(shí)系統(tǒng)針對(duì)個(gè)人的生活軌跡給予相應(yīng)的評(píng)價(jià)。服務(wù)器端接收客戶端發(fā)來(lái)的評(píng)價(jià)分析結(jié)果,可以在界面中查詢并顯示。系統(tǒng)結(jié)構(gòu)如圖2所示。
圖2 軟件結(jié)構(gòu)圖
具體說(shuō)明如下:
1)新建路徑。當(dāng)用戶第一次使用軟件時(shí),首先會(huì)出現(xiàn)未創(chuàng)建路徑和軟件使用說(shuō)明,這時(shí)需要用戶創(chuàng)建自己的路徑信息。此處成功地運(yùn)用了類(lèi)似于日記的功能,以方便用戶的記憶及后來(lái)的查詢。新建路徑完成后會(huì)以ListView的形式顯示新建的信息及時(shí)間[3],點(diǎn)擊即可進(jìn)入百度地圖展示的界面。
2)百度地圖展示與定位。在本設(shè)計(jì)中使用百度地圖進(jìn)行展示[4],與其他地圖相比,百度地圖提供了更加簡(jiǎn)潔的界面,符合大多數(shù)中國(guó)人的習(xí)慣。其次具有很快的更新速度,能夠?yàn)橛脩籼峁┳钚碌牡貓D信息。此軟件需要實(shí)時(shí)地進(jìn)行路徑跟蹤,它的離線地圖功能為軟件的設(shè)計(jì)提供了更好的可能,大大節(jié)省了流量。進(jìn)入地圖定位界面,能夠快速地定位到用戶所在的位置。百度地圖Android定位SDK是利用設(shè)備當(dāng)前的GPS信息(GPS定位)、基站信息(基站定位)和WiFi信息(WiFi定位)完成定位的[5]。同時(shí)利用Android的Service組件把定位的信息實(shí)時(shí)上傳到SQLite數(shù)據(jù)庫(kù)[6],以方便從數(shù)據(jù)庫(kù)中提取位置信息進(jìn)行系統(tǒng)評(píng)價(jià)。
3)軌跡記錄。當(dāng)用戶在地圖展示界面選擇軌跡選單時(shí),則進(jìn)入軌跡記錄界面,后臺(tái)自動(dòng)從SQLite數(shù)據(jù)庫(kù)中調(diào)取定位信息,以點(diǎn)的方式每5 ms定位一次畫(huà)一個(gè)點(diǎn),當(dāng)經(jīng)過(guò)一段時(shí)間由點(diǎn)排成路徑,即為用戶的軌跡路徑圖。同時(shí)用戶可以清除軌跡,軌跡的清除是從SQLite數(shù)據(jù)庫(kù)中清除的,當(dāng)清除后則無(wú)法再調(diào)出以前的數(shù)據(jù)。否則會(huì)一直存在數(shù)據(jù)庫(kù)中。
4)系統(tǒng)評(píng)價(jià)。用戶首先把定位的信息歸一化,劃分為學(xué)習(xí)、休息、娛樂(lè)、其他四大部分交給系統(tǒng)后臺(tái),系統(tǒng)根據(jù)一定的算法給出系統(tǒng)評(píng)價(jià)、系統(tǒng)得分,同時(shí)軟件也為用戶提供了自我評(píng)價(jià)的平臺(tái)。
5)設(shè)置。用戶可根據(jù)需要進(jìn)行離線地圖的下載和查看[7],并且可以設(shè)置百度地圖GPS的更新頻率以及地圖的縮放等級(jí),滿足不同用戶的不同需求。
2.1 客戶端實(shí)現(xiàn)
2.1.1 百度地圖展示定位
要想在百度地圖上進(jìn)行二次開(kāi)發(fā)必須先申請(qǐng)移動(dòng)端的密鑰[3],并在AndroidManifest.xm l中添加網(wǎng)絡(luò)和手機(jī)存儲(chǔ)卡(訪問(wèn)離線地圖)的權(quán)限設(shè)置。同時(shí)要在工程的libs文件夾下放入baidumapapi_Vx_x_x.jar、locSDK_3.1.jar。并對(duì).jar文件進(jìn)行如下操作:點(diǎn)擊鼠標(biāo)右鍵,選擇Build Path->Add to Build Path選項(xiàng)。
2.1.2 百度地圖定位功能
為了使定位更加準(zhǔn)確細(xì)化,設(shè)置了自定義圖層Itemize?dOverlay,用戶可以把感興趣的點(diǎn)繪制在地圖上,并且支持動(dòng)態(tài)更新Item位置、圖標(biāo)。
在定位之前選取學(xué)校的中心位置為中心點(diǎn),定位之后則以定位點(diǎn)為中心點(diǎn),當(dāng)用手點(diǎn)擊中心位置時(shí)會(huì)顯示位置的具體信息。定位的一般流程(偽代碼):
初始化LocationClicent對(duì)象;
在onCreate()中實(shí)例化定位服務(wù),并注冊(cè)定位監(jiān)聽(tīng)接口register?LocationListener;
設(shè)置定位方式LocationClientOption;
發(fā)出定位請(qǐng)求requestLocation();
在監(jiān)聽(tīng)函數(shù)onReceiveLocation(BDLocation location)方法中獲取定位結(jié)果;
把定位結(jié)果放在位置圖層顯示以及放在SQLite數(shù)據(jù)庫(kù)中存儲(chǔ)。
2.1.3 軌跡記錄圖層展示
利用graphicsOverlay幾何繪制圖層在其上面畫(huà)點(diǎn)[4]。首先要在Geometry中構(gòu)建點(diǎn)的樣式,例如點(diǎn)的顏色大小等,同時(shí)要在LocateDbAdapter中遍歷所有的位置信息,把位置信息以設(shè)置的點(diǎn)的形式添加到圖層中,顯示用戶的位置信息。
2.1.4 系統(tǒng)評(píng)價(jià)
用戶把定位信息進(jìn)行歸一劃分,主要有學(xué)習(xí)、休息、娛樂(lè)、其他四大類(lèi)。首先從Locats數(shù)據(jù)庫(kù)中獲得位置信息,通過(guò)記錄目標(biāo)者一天的行蹤軌跡,按百分制進(jìn)行劃分,再根據(jù)劃分的算法,利用achartengier庫(kù)進(jìn)行餅圖分析,同時(shí)系統(tǒng)還可以根據(jù)餅圖信息進(jìn)行系統(tǒng)的評(píng)價(jià)。在系統(tǒng)評(píng)價(jià)界面又可以給出系統(tǒng)評(píng)價(jià)、系統(tǒng)得分。同時(shí)又增加了自我評(píng)價(jià)的功能,可以為自己的情況打分,以星星的數(shù)量為參考,使界面更加生動(dòng)有趣[8]。
系統(tǒng)得分評(píng)價(jià)算法如下:
1)設(shè)置因素集U={學(xué)習(xí),休息,娛樂(lè),其他},已知時(shí)間T={t1,t2,t3,t4},規(guī)定系統(tǒng)的權(quán)重系數(shù)為
2)分別求出各因素在所有時(shí)間中占的百分比為
3)分別求出各因素的均方差
同時(shí)系統(tǒng)給出相應(yīng)的評(píng)價(jià),評(píng)價(jià)標(biāo)準(zhǔn):如果σi超過(guò)了wi的25%,即此因素所占用的時(shí)間不合理,反之占用的時(shí)間為合理。
4)分別求出各因素的得分
5)最后求得總分
該算法比較客觀地反映了學(xué)生的具體情況。
2.2 服務(wù)器端設(shè)計(jì)
服務(wù)器端采用MVC+DAO的設(shè)計(jì)模式進(jìn)行開(kāi)發(fā)[9],使用開(kāi)源的數(shù)據(jù)庫(kù)Mysql,并配置Tomcat服務(wù)器[10]。
2.2.1 系統(tǒng)開(kāi)發(fā)模式介紹
在服務(wù)器端要得到學(xué)生的具體情況,必須獲得客戶端的系統(tǒng)分析數(shù)據(jù)。為了更好地管理和維護(hù),采用MVC+ DAO模式的開(kāi)發(fā)結(jié)構(gòu),Servlet接受客戶端的請(qǐng)求,根據(jù)請(qǐng)求調(diào)用相應(yīng)的JavaBean,將顯示結(jié)果交給JSP完成。模式架構(gòu)見(jiàn)圖3。
圖3 MVC模式圖
2.2.2 智能查詢功能介紹
在查詢結(jié)果界面顯示了當(dāng)前用戶可進(jìn)行的操作,用戶可以選擇查詢的對(duì)象,即全部或其中的任意一項(xiàng),也可以刪除某組數(shù)據(jù)。查詢的結(jié)果以表格的形式顯示,同時(shí)采用了分頁(yè)技術(shù),既給查看帶來(lái)了方便,又節(jié)省了數(shù)據(jù)庫(kù)資源。
該系統(tǒng)以Android的智能終端作為客戶端,以PC機(jī)為服務(wù)器端,在校園這一環(huán)境得到的測(cè)試結(jié)果。
當(dāng)用戶新建路徑軌跡后,會(huì)顯示用戶的位置信息,經(jīng)過(guò)一段時(shí)間后,若用戶進(jìn)行路徑查詢則顯示出這一時(shí)間段的軌跡圖,如圖4所示,進(jìn)入系統(tǒng)評(píng)價(jià)界面,顯示結(jié)果如圖5~7所示,包含了系統(tǒng)評(píng)價(jià)、系統(tǒng)得分和自我評(píng)價(jià)3部分。客戶端與服務(wù)器端通過(guò)HTTP協(xié)議實(shí)現(xiàn)通信,在服務(wù)器端顯示查詢結(jié)果,如圖8所示。
通過(guò)測(cè)試結(jié)果表明,該系統(tǒng)基本實(shí)現(xiàn)了智能終端的校園蹤跡查詢與分析,并且可以在Android2.2及以上的版本上穩(wěn)定運(yùn)行。該軟件操作簡(jiǎn)單,界面優(yōu)化,切實(shí)給各大高校的學(xué)生帶來(lái)了很大的幫助。
圖4 我的軌跡(截圖)
圖5 系統(tǒng)評(píng)價(jià)(截圖)
圖6 系統(tǒng)評(píng)得分(截圖)
圖7 自我評(píng)價(jià)(截圖)
圖8 服務(wù)器端數(shù)據(jù)查詢界面(截圖)
移動(dòng)終端的校園蹤跡分析系統(tǒng)利用百度地圖進(jìn)行二次開(kāi)發(fā),再結(jié)合本校的環(huán)境特點(diǎn)實(shí)現(xiàn)了構(gòu)建個(gè)性化校園的服務(wù)系統(tǒng)。本系統(tǒng)能夠很好地記錄學(xué)生的生活軌跡,切實(shí)地為學(xué)生服務(wù),成為學(xué)生的好助手。同時(shí)此系統(tǒng)具有很好的擴(kuò)展性和移植性,可方便地應(yīng)用于其他高校。
[1]楊鵬.基于Android的校園位置服務(wù)系統(tǒng)研究與實(shí)現(xiàn)[D].大連:大連理工大學(xué),2013.
[2] 姚尚朗,靳巖.Android開(kāi)發(fā)入門(mén)與實(shí)戰(zhàn)體驗(yàn)[M].2版.北京:人民郵電出版社,2013.
[3] 郭宏志.Android應(yīng)用開(kāi)發(fā)詳解[M].北京:電子工業(yè)出版社,2010.
[4] 百度.百度LBS開(kāi)放平臺(tái)[EB/OL].[2014-06-08].http://developer.baidu.com/map/geosdk.htm.
[5] 李佐彬.Android開(kāi)發(fā)入門(mén)與實(shí)戰(zhàn)體驗(yàn)[M].北京:機(jī)械工業(yè)出版社,2011.
[6] 熊文闊.基于Android平臺(tái)手機(jī)圖形編輯軟件的設(shè)計(jì)與實(shí)現(xiàn)[D].北京:北京郵電大學(xué),2011.
[7]王彥超.基于Android的校園地圖服務(wù)設(shè)計(jì)[D].大連:大連理工大學(xué),2011.
[8] 吳善財(cái).Android開(kāi)發(fā)完全實(shí)戰(zhàn)寶典[M].北京:機(jī)械工業(yè)出版社,2012.
[9] 李興華,王月青.Java Web開(kāi)發(fā)實(shí)戰(zhàn)經(jīng)典[M].北京:清華大學(xué)出版社,2010.
[10] 張昆.Java Web開(kāi)發(fā)技術(shù)詳解[M].北京:化學(xué)工業(yè)出版社,2010.
責(zé)任編輯:許 盈
Campus Trace Analysis System Based on M obile Term inal
SUN Yaojie,LI Rongmei,ZHANG Weiwen
(School of Information Engineering,Hebei University of Technology,Tianjin 300401,China)
A new software system is achieved for the popularity of smart mobile phone and the large information of campus geographic.The aim of this system is to achieve the docking of mobile phones and campus information and provide useful services for students.The personalized campus service system is presented with the Android intelligent terminals,Baidu map development,and campus geographic information services based on network for meeting the requirement.Many functions such as positioning set,personalized campus setting,campus trace records,and trace analysis are realized by the client.Intelligent query functions are achieved by the server-side with the MVC model too.The advantages including simple in operation,practicability and perfect function are demonstrated through the test.In addition,the system also can be applied to other campus with expansibility.
Android intelligent terminals;trace records;baidu location;trace analysis;intelligent query
TP311.1
A
10.16280/j.videoe.2015.02.005
2014-07-11
【本文獻(xiàn)信息】孫耀杰,李榮妹,張維文.移動(dòng)終端校園蹤跡分析系統(tǒng)研究[J].電視技術(shù),2015,39(2).