《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信與網(wǎng)絡(luò) > 設(shè)計(jì)應(yīng)用 > LBS移動(dòng)社交資源共享平臺的設(shè)計(jì)與實(shí)現(xiàn)
LBS移動(dòng)社交資源共享平臺的設(shè)計(jì)與實(shí)現(xiàn)
來源:電子技術(shù)應(yīng)用2013年第9期
陳月峰1,李炳泉1,彭凌西2,謝冬青2,鐘秀玉3
1. 廣東海洋大學(xué) 信息學(xué)院,廣東 湛江 524088; 2. 廣州大學(xué) 計(jì)算機(jī)科學(xué)與教育軟件學(xué)院,廣東 廣州 510006; 3. 廣東嘉應(yīng)學(xué)院 計(jì)算機(jī)學(xué)院, 廣東 梅州514015
摘要: 結(jié)合移動(dòng)互聯(lián)網(wǎng)、社交網(wǎng)絡(luò)和電子商務(wù),構(gòu)建了基于位置的服務(wù)(LBS)移動(dòng)社交資源共享(SMSRL)平臺,并對主要功能模塊設(shè)計(jì)進(jìn)行了詳細(xì)的描述,探討了實(shí)現(xiàn)該平臺的關(guān)鍵技術(shù)。SMSRL平臺的系統(tǒng)設(shè)計(jì)合理,便于在不同平臺間移植和升級,適合商業(yè)化。
中圖分類號: TP311.5
文獻(xiàn)標(biāo)識碼: A
文章編號: 0258-7998(2013)09-0139-03
Design and implement of the platform of sharing mobile sociality resource based on LBS
Chen Yuefeng1, Li Bingquan1, Peng Lingxi2, Xie Dongqing2, Zhong Xiuyu3
1. Information School, Guangdong Ocean University, Zhanjiang 524088, China; 2. Department of Computer and Education Software, Guangzhou University, Guangzhou 510006, China; 3. School of Computer Science, Jiaying University, Meizhou 514015, China
Abstract: Built platform of sharing mobile sociality resource based on LBS(SMSRL), combining with mobile Internet, social networking and e-commerce. We analyse the requirment of platform, decribe the designment of the main modules, and discuss the key relization technologies. The SMSRL platform is reasonable in designment, which is easy to transplant between different platforms, to upgrades and to facilitate commercialization.
Key words : Location Based Service(LBS); sharing sociality resource; global position system; Andriod

    當(dāng)前移動(dòng)設(shè)備上的傳統(tǒng)即時(shí)通信軟件(如QQ、MSN等)是基于TCP協(xié)議的即時(shí)通信軟件,已難以滿足個(gè)性化的社交需求。隨著GPS(Global Position System)系統(tǒng)的普及和移動(dòng)互聯(lián)網(wǎng)的高速發(fā)展,基于地理位置的服務(wù)LBS(Location Based Service)式社交成為研究智能手機(jī)應(yīng)用的熱點(diǎn)。LBS是指移動(dòng)網(wǎng)絡(luò)通過GPS技術(shù)和電子地圖平臺的支持來獲取移動(dòng)終端用戶的位置信息,為終端用戶提供相應(yīng)服務(wù)的一種增值業(yè)務(wù)[1]。參考文獻(xiàn)[2]研究了匿名LBS的使用,參考文獻(xiàn)[3]討論了LBS應(yīng)用的安全技術(shù),參考文獻(xiàn)[4]提出一種基于Web 服務(wù)技術(shù)構(gòu)建LBS 的體系結(jié)構(gòu)。但是目前國內(nèi)LBS僅在移動(dòng)互聯(lián)網(wǎng)、社交網(wǎng)絡(luò)和電子商務(wù)的單獨(dú)應(yīng)用較多,因此研究這三者的結(jié)合,是目前IT技術(shù)科研應(yīng)用的重要領(lǐng)域,同時(shí)也將帶來巨大的經(jīng)濟(jì)和社會(huì)效益。LBS移動(dòng)社交資源共享SMSRL(Sharing Mobile Sociality Resource Based on LBS)平臺正是利用上述技術(shù),完成一些即時(shí)性的實(shí)際社交活動(dòng),使單純的網(wǎng)絡(luò)信息交互,變成立體化的人際式交互。

1 SMSRL平臺概述
    SMSRL平臺是Android手機(jī)上開發(fā)一個(gè)LBS交友應(yīng)用程序,其功能促進(jìn)了用戶的社交發(fā)展。該平臺利用Android的GPS定位數(shù)據(jù),結(jié)合百度地圖開放API與極光推送API,使移動(dòng)用戶之間,特別是附近的用戶之間實(shí)現(xiàn)更有價(jià)值的社交活動(dòng),如幫助完成某些任務(wù)、與附近的好友聊天等。
    SMSRL平臺的開發(fā)嚴(yán)格遵循軟件工程的原則,開發(fā)分為如下步驟:
     (1) 需求分析; (2)設(shè)計(jì)客戶端UI;(3)設(shè)計(jì)數(shù)據(jù)存儲(chǔ),創(chuàng)建數(shù)據(jù)庫和表; (4)設(shè)計(jì)服務(wù)器端與客戶端交互;(5)實(shí)現(xiàn)客戶端功能界面與服務(wù)器端的邏輯處理; (6)客戶端程序打包、簽名并發(fā)布。
2 SMSRL平臺需求分析
    SMSRL平臺通過手機(jī)定位技術(shù),認(rèn)識了身邊的有緣人,可與熟悉的或陌生的朋友打招呼、聊天、分享位置等信息。SMSRL的功能結(jié)構(gòu)圖如圖1所示,主要功能包括:任務(wù)管理(包括發(fā)布任務(wù)、我的任務(wù)管理、附近任務(wù)列表等)、好友的管理(包括顯示好友和自己的最新動(dòng)態(tài)信息、查找附近好友、聊天)及對系統(tǒng)、任務(wù)的設(shè)置。

    SMSRL的主要參與者包括發(fā)布者和搜索者,涉及的主要用例有:發(fā)布任務(wù)、狀態(tài)管理、搜索任務(wù)、任務(wù)競標(biāo)等,系統(tǒng)用例圖如圖2所示。

3 SMSRL平臺設(shè)計(jì)
3.1 架構(gòu)設(shè)計(jì)

    Andriod是目前流行的智能手機(jī)終端操作系統(tǒng)和移動(dòng)應(yīng)用開發(fā)平臺,由操作系統(tǒng)、中間件、用戶界面和應(yīng)用軟件組成,是一個(gè)開放而完整的移動(dòng)“軟件棧”[5]。SMSRL平臺的設(shè)計(jì)借鑒了參考文獻(xiàn)[6-9],其設(shè)計(jì)思路是:利用Android平臺的GPS定位模塊提供位置信息,利用極光推送API實(shí)現(xiàn)消息推送,調(diào)用百度地圖API實(shí)現(xiàn)地圖描繪,利用Android應(yīng)用程序框架實(shí)現(xiàn)網(wǎng)絡(luò)通信的功能??蛻舳它c(diǎn)擊界面產(chǎn)生觸屏事件,發(fā)送請求給監(jiān)聽Service服務(wù)類,Service處理請求后調(diào)用HTTPClien組裝請求URL,發(fā)送并異步接收數(shù)據(jù)刷新界面。服務(wù)器端Strust2框架接收到URL請求調(diào)用對應(yīng)Action處理數(shù)據(jù),Action再調(diào)用Hibernate做數(shù)據(jù)持久化,按照請求調(diào)用推送框架,組裝推送消息,實(shí)現(xiàn)實(shí)體類推送。
3.2 SMSRL平臺數(shù)據(jù)庫設(shè)計(jì)
    SMSRL平臺涉及的實(shí)體主要有用戶、活動(dòng)、好友和任務(wù),這些實(shí)體關(guān)聯(lián)又產(chǎn)生了活動(dòng)參與表、用戶參與表、在線用戶列表等。同時(shí)為了提高存取速度,將用戶、活動(dòng)、好友和任務(wù)實(shí)體的相關(guān)圖片存放到相應(yīng)的圖片表中。服務(wù)器端數(shù)據(jù)庫模型如圖3所示。  

         
3.3 MSRL平臺的關(guān)鍵技術(shù)
3.3.1 服務(wù)器端與客戶端交互協(xié)議設(shè)計(jì)

     Android客戶端的聯(lián)網(wǎng)協(xié)議采用Http的方式,而由于Android 內(nèi)部已經(jīng)集成了Apache Http這個(gè)類,所以本設(shè)計(jì)采用了HttpClient的方式做Http連接。自定義HttpClient類內(nèi)部采用單例模式獲取HttpClient對象,發(fā)起Post請求。而每一種消息經(jīng)處理后返回Json格式字符串,并且將其實(shí)例化為對應(yīng)的消息體對象,Entity為統(tǒng)一的消息接口,將請求返回的輸入流傳進(jìn),返回以UTF-8編碼的Sring類型對象。獲得返回值之后,在MyService作處理,并通過Android的Handle方式異步刷新UI作出反應(yīng)。
3.3.2 異步加載最新信息的設(shè)計(jì)
     由于Android自帶的Listview顯示風(fēng)格單調(diào),而且不具備下拉刷新與上推加載的功能,本平臺設(shè)計(jì)并實(shí)現(xiàn)了比較常用的下拉刷新異步加載圖片的ListView控件。在列表顯示界面中,可以按住列表項(xiàng)向下拖動(dòng)加載最新消息,在列表最后的一項(xiàng),通過向上拖動(dòng)或者點(diǎn)擊加載更多消息,并伴隨加載動(dòng)畫。設(shè)計(jì)的XListView控件繼承了Android平臺的ListView,其相應(yīng)的類圖如圖4所示。

 

 

3.3.3 圖像加載功能的實(shí)現(xiàn)
    (1) 圖片獲取
    由于Android的文件存儲(chǔ)于網(wǎng)絡(luò),因而使用異步加載的方式來顯示控件可以給用戶帶來更好的體驗(yàn)。在Android應(yīng)用中,如果UI線程5 s內(nèi)沒響應(yīng),就會(huì)拋出無響應(yīng)異常,在遠(yuǎn)程獲取較大圖片資源時(shí),這種異常很容易導(dǎo)致應(yīng)用失敗。要避免這種問題的產(chǎn)生,將啟動(dòng)一個(gè)新的線程來獲取資源,完成后通過Handler機(jī)制發(fā)送消息,并在UI線程中處理消息,從而達(dá)到在異步線程中獲取圖片的效果。
    (2) 圖片保存
    在每次獲取圖片資源時(shí),都要重新進(jìn)行遠(yuǎn)程下載,占用內(nèi)存太多,而且加載速度慢,特別是較大的圖片資源,甚至?xí)?dǎo)致內(nèi)存溢出。為了提高加載速度、節(jié)省流量,將圖片資源保存在本地手機(jī)的SDCard上,需要時(shí)可直接從SDCard讀取。SDCard空間畢竟有限,因此采用最近最久未使用(LRU)算法,當(dāng)空間不足時(shí),根據(jù)LRU規(guī)則刪除一些最近沒有被用戶使用的資源即可。
    利用Android通用框架,結(jié)合百度地圖與極光推送的開放API,實(shí)現(xiàn)了LBS社交資源共享平臺。在系統(tǒng)的設(shè)計(jì)中充分考慮了Android系統(tǒng)的易移植性、高銷量等優(yōu)點(diǎn),集中使用了Android系統(tǒng)的各接口API模塊,特別是異步加載最新信息和圖片資源下載的設(shè)計(jì)和實(shí)現(xiàn),使系統(tǒng)的運(yùn)行效率有了較大的提升。該平臺的廣泛應(yīng)用,徹底加強(qiáng)了社交網(wǎng)絡(luò)的真實(shí)影響。
參考文獻(xiàn)
[1] 李海燕, 張巖. 移動(dòng)通信網(wǎng)絡(luò)的移動(dòng)臺定位技術(shù)及應(yīng)用[J].郵電設(shè)計(jì)技術(shù),2006(3):27-34.
[2] MARCP G, DIRK G. Anonymous usage of location-based services through spatial and temporal cloaking[C]. International Conference on Mobile Systems, Applications, and Services-MobiSys,2003.
[3] Yang Jie, Chen Yingying, SANJAY M, et al. Securing mobile location-based services through position verification leveraging key distribution[C].Wireless Communications and  Networking, IEEE Conference-WCNC, 2012.
[4] 周腳根,邊馥苓.一種基于位置的移動(dòng)服務(wù)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].武漢大學(xué)學(xué)報(bào)(信息科學(xué)版), 2006,31(4):352-355.
[5] 姚昱曼,劉衛(wèi)國.Andriod的架構(gòu)與應(yīng)用開發(fā)研究[J].計(jì)算機(jī)系統(tǒng)應(yīng)用,2008(11):110-112.
[6] 張志清.基于Android的移動(dòng)社交產(chǎn)品客戶端設(shè)計(jì)與實(shí)現(xiàn)[D].北京:北京交通大學(xué),2012.
[7] 劉卜.移動(dòng)社交網(wǎng)絡(luò)平臺的研究與實(shí)現(xiàn)[D]. 北京: 北京郵電大學(xué),2011.
[8] 許穎,魏峰遠(yuǎn).移動(dòng)GIS關(guān)鍵技術(shù)及開發(fā)模式探討[J]. 測繪與空間地理信息,2008,31(4):45-47.
[9] 羅英偉,黃寶琦,汪小林,等.輕量級WebGIS系統(tǒng)PKGML[J].計(jì)算機(jī)輔助設(shè)計(jì)與圖形學(xué)學(xué)報(bào),2005,17(04):852-861.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。