朱婉婷 李俊 吳彤 高星 張粵
摘要:每個高校都會有大大小小的活動,而活動的宣傳一直僅僅局限于發(fā)傳單、設點、宣傳板等方式,而隨著網(wǎng)絡的飛速發(fā)展,將宣傳放置于網(wǎng)絡之上已經(jīng)成為一種趨勢,然而中國大部分高校的宣傳方式并不集中,分布不均勻。研究一種便利、實時的活動宣傳系統(tǒng)很有必要,該系統(tǒng)提出一種包含Android移動客戶端、Web服務端混合而成的學生實時活動信息查看系統(tǒng)。使用基于Android平臺的移動設備實現(xiàn)發(fā)布活動信息、通過地圖查看周邊活動功能,通過3G網(wǎng)絡將用戶端發(fā)布的活動數(shù)據(jù)實時上傳至服務器。通過實際應用表明,系統(tǒng)部署后確能實時、便捷地掌握周邊活動信息,甚至是店鋪優(yōu)惠,為高校學生高效活動宣傳,豐富課余生活提供了有力的支持。
關(guān)鍵詞:學生活動宣傳;GPS定位;移動終端
中圖分類號:TP393 文獻標識碼:A 文章編號:1009-3044(2016)29-0122-04
據(jù)調(diào)查,目前我國的大多數(shù)高校,有各種活動,但是宣傳的方式也較為單調(diào),有發(fā)傳單,畫宣傳板,或者班級進行直接宣傳,但是這樣覆蓋面不夠廣泛,很多同學都不能夠及時深入清楚地了解活動,可能更多的是口口相傳,現(xiàn)如今網(wǎng)絡宣傳已經(jīng)成為一種趨勢,但是宣傳的方式可能更多的是通過朋友圈等等一些社交軟件,并沒有專門的一個軟件對各種活動進行一個全面的宣傳。此項目方便了主辦方增加了宣傳的廣度,同時也方便了用戶可以及時地了解活動的具體信息并參與。當然此項目也不僅僅只局限于校園的應用,可以增加其功能,如果效果好,可以推廣到各個商家以及各種旅游景點等等,運用GPS進行即時定位,顯示活動的具體信息,是一款實用性很強的軟件。
本系統(tǒng)在技術(shù)方面結(jié)合了GPS定位技術(shù)和3D效果展示等多種方式,在對GPS功能的使用中,增添了一項新的功能,可以將想要找到的地點的具體的周邊環(huán)境通過3D效果進行展示,通過本系統(tǒng),學生們可以及時地通過校園地圖確定活動的具體位置,并且可以了解到活動的具體信息,通過3D效果展示可以更加及時準確的找到活動的具體位置。到現(xiàn)在為止基于An-droid平臺的定位研究和應用處于不斷增長的階段,國內(nèi)相關(guān)領(lǐng)域的研究論文已經(jīng)層出不窮。而基于Android平臺的校園位置服務以及活動信息的即時更新服務卻不常見?,F(xiàn)有的定位技術(shù)主要有PPD定位技術(shù)、GPS衛(wèi)星定位、藍牙定位、WIFI網(wǎng)絡定位、GPRS/CDMA移動通訊技術(shù)定位等。但是這些也只是單純的進行了定位,并沒有實現(xiàn)3D效果的展示,也沒有將活動與地圖進行有機的結(jié)合,本系統(tǒng),可以讓用戶快捷地了解到活動的信息,并且進展的狀況,對于很多不是對活動不了解,而且方向感較差的同學提供了方便。可以快速準確地找到活動位置。
1系統(tǒng)設計相關(guān)技術(shù)
1.1Android平臺技術(shù)
1.1.1Android平臺簡介
Android是一種基于Linux內(nèi)核的軟件平臺和操作系統(tǒng),一般統(tǒng)稱為“安卓”或“安致”,尚且沒有統(tǒng)一的中文名稱,采用軟件堆棧的架構(gòu),其開發(fā)者是Andy Rubin,由Google公司收購注資組建手機開發(fā)者改良并在2007年11月5日發(fā)布,該平臺主要由操作系統(tǒng)、用戶界面、中間件和應用軟件等四部分組成,主要用于便攜設備如手機,而后逐漸擴展到平板以及其他領(lǐng)域上。隨著4G智能手機時代的到來,以及Android平臺的快速發(fā)展,人們對Android應用開發(fā)的需求日趨增多,而作為一款開放式的操作系統(tǒng),如今android平臺已允許開發(fā)者使用多不同的編程語言來開發(fā)Android應用,不再是只能用Java語言開發(fā),受到了許多開發(fā)者的歡迎。
1.1.2Android定位技術(shù)-GPS定位和Wifi定位
GPS(Global Positioning System)稱作全球定位系統(tǒng),是20世紀70年代由美國衛(wèi)星局研制的新一代空間衛(wèi)星導航系統(tǒng),通過該系統(tǒng),用戶不僅可以在全球范圍內(nèi)實現(xiàn)隨時隨地連續(xù)的二維及三維導航定位和測速,而且能夠進行高精度的準確定位和時間傳遞。只要智能設備支持GPS模塊功能便可支持直接和衛(wèi)星連接來獲取當前經(jīng)緯度從而將自己的位置信號發(fā)送到定位后臺實現(xiàn)手機定位。Wifi定位是wireless fiddity的英文縮寫,表示無線相容認證。Android Wifi定位是根據(jù)一個獨一無二的WifiMAC地址即手機Wifi網(wǎng)卡的mac地址,搜索并且收集到的該Wifi熱點的位置信息并且上傳到一個用于存儲位置信息的數(shù)據(jù)庫中,然后訪問網(wǎng)絡上的定位服務以獲得經(jīng)緯度坐標,因為Wifi定位和基站定位都需要使用網(wǎng)絡所以在Android平臺中也統(tǒng)稱為Network方式。
1.2Web服務器技術(shù)
Apache HTTP Server簡稱Apache,源于“a patchy server"的讀音,意為充滿補丁的服務器。Apache是軟件基金會開發(fā)并發(fā)布的一個開放源碼的網(wǎng)頁服務器,能夠運行于大部分的計算機操作系統(tǒng),因為它是自由軟件并且可以廣泛運行在幾乎所有的計算機平臺上,同時具有極高的安全性,所以不斷有大批的開發(fā)者來為它開發(fā)新的功能和特性以及修改原來的缺陷,經(jīng)過多次修改,使其成為目前最流行的Web服務器端軟件之一和世界使用排名第一的Web服務器軟件。Apache有簡單、速度快、性能穩(wěn)定的特點,可通過簡單的API擴展,將Perl/Python等解釋器編譯到服務器中,并具備代理服務器的功能。
2系統(tǒng)設計
2.1設計思路
本系統(tǒng)將用戶分為學生用戶和活動發(fā)布者用戶,通過選擇不同的身份進行注冊,進人系統(tǒng)后臺將會驗證是哪種類型的用戶,如果是活動發(fā)布者用戶,則會提供發(fā)布活動的功能,但以學生身份注冊登陸將不擁有此功能?;顒影l(fā)布者通過在移動端發(fā)布活動時間地點信息,后臺人員經(jīng)過認證將活動信息上傳到服務器端存儲,并在地圖模塊自動定位地點添加活動并注明活動名稱,時間,地點,描述等信息。
2.2系統(tǒng)總體設計
本系統(tǒng)以web服務器為數(shù)據(jù)中轉(zhuǎn)站,實現(xiàn)了特定用戶發(fā)布,學生定位的實時活動信息查看系統(tǒng)。其中用戶可以分為兩類,即學生,發(fā)布者,不同類的用戶可以使用的功能不同,學生可以查看校園通知和活動,發(fā)布者可以發(fā)布校園活動,周邊優(yōu)惠等。其總體系統(tǒng)架構(gòu)如圖1所示
2.3系統(tǒng)結(jié)構(gòu)
基于Android的學生實時活動信息查看系統(tǒng)主要由An-droid客戶端、服務器端以及后臺管理員3部分組成。Android客戶端負責發(fā)布活動信息,根據(jù)發(fā)布活動的地點添加位置和相關(guān)信息到地圖中,同時還具備查看校園內(nèi)的消息通知類似于校園新聞以及失物招領(lǐng),認識校友等校園服務?;顒影l(fā)布者將活動或者優(yōu)惠等信息發(fā)送到服務器,并存儲在數(shù)據(jù)庫中,后臺管理員通過實際驗證將數(shù)據(jù)同步到地圖當中。服務端保存了數(shù)據(jù)庫的大量數(shù)據(jù),可以響應來自客戶端的數(shù)據(jù)請求,返回相應數(shù)據(jù)給客戶端。本系統(tǒng)的基本架構(gòu)如圖2所示。
2.4數(shù)據(jù)庫設計
本系統(tǒng)使用的是android應用中自帶的SQLite文件型數(shù)據(jù)庫,根據(jù)系統(tǒng)需求,其中包含用戶注冊表、用戶信息表、活動信息表、評論信息表、發(fā)布活動表、地圖信息表、位置信息表、好友信息表以及通訊錄表等數(shù)據(jù)表。通過這些數(shù)據(jù)庫表可以明確用戶、地圖和活動之間的關(guān)系,每個用戶通過定位都會獲取到相對應的地圖信息表,而每張地圖又包含多個活動信息,如圖3數(shù)據(jù)庫ER圖所示。
3系統(tǒng)主要模塊和功能設計
基于android的學生實時活動信息查看系統(tǒng)主要包括5大功能模塊:用戶注冊與登錄模塊、地圖切換模塊、查看地標信息模塊、活動發(fā)布模塊和3D定位模塊。
用戶注冊與登錄模塊主要負責用戶身份錄入和驗證,通過用戶注冊選擇身份錄入數(shù)據(jù)庫,在登陸模塊輸入用戶名和密碼來驗證是否匹配,數(shù)據(jù)庫內(nèi)無記錄則表示用戶沒有注冊或者注冊失敗。
地圖切換模塊和查看地標信息模塊是本系統(tǒng)的核心模塊,地圖切換模塊主要是進行2D和3D地圖之間的切換以及檢測GPS定位是否開啟,而查看地標信息模塊則是可根據(jù)地圖上特定的位置信息來查看該位置過去舉辦過什么活動,現(xiàn)在正在進行什么活動和未來會有什么活動在該地點發(fā)生舉辦,使用戶快速了解周邊信息。
活動發(fā)布模塊根據(jù)用戶登錄時的身份來選擇是否需要隱藏活動按鈕,學生身份登陸點擊發(fā)布按鈕只能發(fā)布與學生信息相關(guān)的,如失物招領(lǐng)。而活動發(fā)布者身份則不僅可發(fā)布特定位置的相關(guān)活動信息并且將會被同步到地圖當中也可以發(fā)布一些校園通知等等。
3D定位模塊讓地圖中建筑物等,以一種3D的效果呈現(xiàn),給人一種虛擬現(xiàn)實的感覺,可以通過直觀的地理實景模擬表現(xiàn)方式,為用戶提供地圖查詢。
3.1查看地標信息模塊
通過申請百度地圖的基礎(chǔ)地圖MapView和全景地圖Pan-oramaView的密鑰和API并下載相應的SDK開發(fā)包,在此基礎(chǔ)上開發(fā)借助遠程控制的定位指令,通過GPS、網(wǎng)絡基站和網(wǎng)絡定位對用戶進行定位,從而顯示學生的當前位置信息,查看學生位置信息的歷史記錄可查看在某個時刻經(jīng)過某個地方,并將學生的位置記錄保存到移動終端的數(shù)據(jù)庫,并在用戶瀏覽完退出該模塊時啟動線程完成將本地SQLite中存儲位置信息,通過json傳入服務器,便于需要數(shù)據(jù)時導出使用,或者進行更進一步系統(tǒng)設計時作為數(shù)據(jù)源。再根據(jù)用戶所在位置信息從數(shù)據(jù)庫中更新用戶周圍的地點事件。
3.2地圖切換模塊
在地圖導航實現(xiàn)中,本系統(tǒng)考慮到不同維度的功能便捷性,將該模塊分為二維地圖和三維地圖兩個部分,同時提供兩種維度的切換,三維效果的實現(xiàn)為了讓地圖中建筑物等,以一種3D仿真的效果呈現(xiàn),給人一種虛擬現(xiàn)實的感覺,可以通過直觀的地理實景模擬表現(xiàn)方式,為用戶提供地圖查詢。
1)二維地圖,平面效果沒有建筑層次感,使用Map View顯示基礎(chǔ)地圖,并將所有地點和位置的建筑物或?qū)嵨镉幂喞獔D顯示出來,同時還引入地點圖標來標記位置,從SQLite數(shù)據(jù)庫中獲取該用戶和其他用戶的位置信息,將這些位置信息進行加權(quán)排序,每個地點都有權(quán)值記錄,權(quán)值噠并且多用戶去的地點排列會靠前,從而獲取到排列前十的地點進行PopView顯示,即相應位置會顯示紅色的地標圖標,點擊該圖標,上方會顯示詳細的活動信息,通過獲取從數(shù)據(jù)庫中保存的位置信息來匹配顯示用戶發(fā)布活動時填寫的活動地點、時間、內(nèi)容等信息。而詳細信息的顯示是通過調(diào)用百度地圖的接口來對獲取到的數(shù)據(jù)進行自定義顯示和使用。
2)三維地圖,使用Panorama View顯示街景地圖,最仿真的還原現(xiàn)實的建筑與街道,通過調(diào)用百度全景圖接口,根據(jù)經(jīng)緯度獲取當前位置的全景圖,通過設置俯仰角、偏航角和縮放級別顯示鄰接箭頭和全景圖。通過圖片覆蓋物和文字覆蓋物以懸浮文字的方式添加活動的地點圖片和介紹,使用iSOB傳輸?shù)椒掌?,服務器解析json并存儲到數(shù)據(jù)庫。點擊前后左右即可到達想要去的地點,同時可以發(fā)布現(xiàn)場照片同步到數(shù)據(jù)庫中,增強應用的互動性。
4系統(tǒng)實現(xiàn)
4.1Android用戶端實現(xiàn)
4.1.1用戶端界面實現(xiàn)
用戶端包含5個主要界面,分別是首頁界面,地圖界面,發(fā)布界面,消息界面和個人界面。其中首頁界面用于顯示校園活動,通知信息;地圖界面用于2D和3D地圖切換以及實時定位;發(fā)布界面用戶發(fā)布活動、優(yōu)惠等信息;消息界面用于和同學以及校友互動社交;個人界面則用于編輯和查看個人信息等。
首頁界面是應用的主界面,會即時更新一些校園最新通知、活動和公告等,頁面運用ViewPager控件實現(xiàn)最上端的局部圖片滑動指引效果和運用Listview控件實現(xiàn)校園新聞列表效果,校園首頁界面及校園通知詳情頁如圖4所示
地圖界面可選擇進入全景街景模式即三維地圖或者平面地圖模式如圖5左所示,點擊wust全景即可獲取到當前用戶所在位置的全景圖,根據(jù)箭頭的指示或者手動滑動來調(diào)整移動方向,如圖5中所示,點擊2D地圖加載平面地圖,紅色帶字母圖標即是當天有活動的位置,選中某個地標,將會顯示活動細節(jié)。
4.1.2用戶端功能實現(xiàn)用戶端功能包含學生注冊,身份認證,地圖獲取和定位等功能,當用戶首次注冊時,會進行身份選擇與驗證,可選擇學生和活動發(fā)布者身份,然后進入登錄界面,將用戶名和密碼與數(shù)據(jù)庫比對來判斷是否注冊過,若已經(jīng)注冊則根據(jù)注冊時選擇的身份進行功能劃分進人首頁界面,否則將進人注冊界面,待用戶注冊后再登錄進入首頁,然后打開GPS設置實時定位,后臺將會將用戶所在位置的周邊信息獲取,用戶點擊地點圖標即可動態(tài)查看活動信息,其程序流程圖如圖6所示
4.2 web服務器實現(xiàn)
本系統(tǒng)服務器是通過LAMP組合來搭建的web服務器,Computer Knowledge and TechnoIogy電腦知識與技術(shù)LAMP組合分別表示linux操作系統(tǒng),apache web服務器,Mysql數(shù)據(jù)庫以及PHP腳本程序。該服務器不需要編寫基于網(wǎng)頁的界面,而是通過采用HTTP請求、響應進行交互直接為Android客戶端提供數(shù)據(jù)訪問接口。訪問過程為用戶在Android客戶端發(fā)送標準的HTTP請求給服務器,當APACHE服務器收到請求后,將請求消息再交由PHP腳本程序進行處理,PHP腳本程序根據(jù)收到不同的動作來觸發(fā)不同的程序,最終將數(shù)據(jù)交由APACHE返回給Android客戶端。
5結(jié)束語
在移動終端普及度相當高和移動技術(shù)開發(fā)火熱的今天,本系統(tǒng)用到了多種不同的編程技術(shù),已完成基本的學生實時活動信息查看功能,學生和校園團體組織可以通過此平臺快速獲取信息,具有很強的實用性和擴展性。由于此項目實際應用程度高,并且基礎(chǔ)設施費用較低廉,使得本系統(tǒng)具有很好的擴展性,此系統(tǒng)將不會僅局限于高校活動的宣傳,還可為學生提供,如校園內(nèi)每個地點的實時活動定位查詢、校園內(nèi)及周邊商鋪和超市的優(yōu)惠信息定位查詢、課表查詢、校園周邊導航、節(jié)假日通知,校園通知等等便捷的校園服務,為同學們提供快速、便捷的消息查看,節(jié)約時間,實時播報。稍加以改裝便可應用于景點,熱門商圈等。