朱山峰
【關(guān)鍵詞】云服務(wù) Android 興趣分享平臺社交軟件
隨著移動互聯(lián)網(wǎng)的概念日益深入人心,移動智能手持終端得到了快速的發(fā)展與普及。Android 系統(tǒng)作為當(dāng)前智能終端的操作系統(tǒng)之一,日益受到互聯(lián)網(wǎng)公司和第三方開發(fā)人員的喜愛,基于 Android 系統(tǒng)的各種應(yīng)用層出不窮。目前,Android 應(yīng)用主要是在附帶標(biāo)準(zhǔn)插件集的 Eclipse 軟件上開發(fā)。Paas服務(wù)(平臺即服務(wù))為開發(fā)一個具有網(wǎng)絡(luò)功能的應(yīng)用提供很大的便捷?;谠撛品?wù)可以縮短軟件開發(fā)周期,降低軟件開發(fā)復(fù)雜難度,從而降低軟件開發(fā)成本。本文介紹了使用服務(wù)器端+客戶端結(jié)構(gòu),在Android系統(tǒng)上進(jìn)行校園軟件的開發(fā)與設(shè)計——使用Android平臺推出的SDK和 Eclipse 開發(fā)環(huán)境實(shí)現(xiàn)了校園社交軟件。
1 研究內(nèi)容
本興趣分享平臺包含用戶注冊、用戶登陸、活動發(fā)布、丟失拾獲、校園美食等功能。系統(tǒng)具體功能需求分析如下:
1.1 用戶注冊
為第一次使用本系統(tǒng)的客戶提供注冊服務(wù)。
1.2 用戶登陸
讓已經(jīng)注冊的用戶通過自己的賬號和密碼來登陸系統(tǒng)。
1.3 活動發(fā)布
用戶發(fā)布活動信息,還可以對發(fā)表過的活動信息進(jìn)行編輯或者刪除。
1.4 丟失拾獲
失物者、拾物者雙方在平臺上留下丟(拾)物品的時間、地點(diǎn)、物品特征等信息。
1.5 圖文分享
用戶可以圖片和文字的形式分享在校內(nèi)或校外遇到的事情。
當(dāng)前的移動應(yīng)用通常是針對手機(jī)端的信息發(fā)布和交流,而信息數(shù)據(jù)是需要通過網(wǎng)絡(luò)來進(jìn)行獲取。也就是說在開發(fā)的過程中應(yīng)包括信息提供端和手機(jī)接收端,即服務(wù)器端和客戶端兩部分:服務(wù)器端負(fù)責(zé)提供數(shù)據(jù)和維護(hù)數(shù)據(jù),客戶端負(fù)責(zé)信息的發(fā)布和顯示。服務(wù)器端和客戶端的紐帶是網(wǎng)絡(luò)連接。該系統(tǒng)的物理架構(gòu)主要由后臺數(shù)據(jù)庫服務(wù)器、無線網(wǎng)絡(luò)、手機(jī)客戶端等部分組成。服務(wù)器端通過無線網(wǎng)絡(luò)訪問后臺服務(wù)器,相關(guān)數(shù)據(jù)信息由后臺服務(wù)器提供,客戶端部分?jǐn)?shù)據(jù)存儲使用SQLite數(shù)據(jù)庫,應(yīng)該保持客戶端的數(shù)據(jù)和服務(wù)器數(shù)據(jù)庫中的數(shù)據(jù)一致。運(yùn)行過程中保證服務(wù)器始終處于開啟狀態(tài)。
2 軟件的設(shè)計與實(shí)現(xiàn)
2.1 服務(wù)器端功能實(shí)現(xiàn)
本項目不需要具體搭建服務(wù)器平臺,利用網(wǎng)絡(luò)云服務(wù)資源可以大大減少人力,縮短開發(fā)周期。要使用公共的移動開發(fā)平臺提供的API編寫應(yīng)用,必須要成為開放平臺的開發(fā)者,即需要到Bmob平臺進(jìn)行應(yīng)用注冊,也就是創(chuàng)建應(yīng)用。
先注冊賬號,然后點(diǎn)擊創(chuàng)建應(yīng)用,此時,開發(fā)平臺會為申請的這個應(yīng)用自動生成唯一的應(yīng)用密鑰,這時表示應(yīng)用申請成功。
2.2 客戶端功能實(shí)現(xiàn)
在編寫客戶端程序前,需要下載Bmob SDK放在libs目錄下并對SDK初始化。
客戶端變動較大,針對不同的應(yīng)用,利用控件做具體的UI設(shè)計,并將服務(wù)器提供的數(shù)據(jù)以清晰、方便的形式展現(xiàn)出來。下面從用戶注冊、活動發(fā)布、圖文分享三個應(yīng)用程序的客戶端分別介紹。
2.2.1 用戶注冊登錄
用戶是一個應(yīng)用程序的核心。Bmob提供了一個專門的用戶類——BmobUser來自動處理用戶賬戶管理所需的功能。BmobUser是BmobObject的一個子類,它繼承了BmobObject所有的方法,具有BmobObject相同的功能。不同的是,BmobUser增加了一些特定的關(guān)于用戶賬戶管理相關(guān)的功能。BmobUser有幾個特定的屬性: username: 用戶的用戶名(必需)。password: 用戶的密碼(必需)。email: 用戶的電子郵件地址(可選)。
2.2.2 活動發(fā)布
用戶在活動的過程中,發(fā)現(xiàn)有趣的事情,可以隨時隨地發(fā)起的分享,發(fā)起者可以留下活動的舉辦地、舉辦時間和聯(lián)系方式,節(jié)省很多宣傳工作量。
該功能的界面主要是利用ListView組件進(jìn)行設(shè)計的,因?yàn)長istView的數(shù)據(jù)來源靈活并可以實(shí)現(xiàn)自身的樣式定制?;顒有畔⒂煽蛻舳讼蚝笈_服務(wù)器請求,通過JSON格式封裝數(shù),在客戶端收到數(shù)據(jù)后,對其進(jìn)行解析,然后通過數(shù)據(jù)適配器將數(shù)據(jù)添加到ListView中。如果想要參與某項活動,只要一鍵就可以聯(lián)系到舉辦方。該功能實(shí)現(xiàn)是借助于Android手機(jī)的電話撥打功能,獲取舉辦方的電話號碼,直接調(diào)用手機(jī)自帶的電話應(yīng)用程序。
2.2.3 圖文分享
為了軟件的使用,用戶注冊登后可直接進(jìn)入圖文分享區(qū)以圖片的形式顯示當(dāng)前信息。信息列表通過ListView控件進(jìn)行實(shí)現(xiàn)。信息內(nèi)容由客戶端向后臺服務(wù)器請求,通過JSON格式封裝數(shù)據(jù)。在客戶端收到數(shù)據(jù)后,對其進(jìn)行解析,然后通過數(shù)據(jù)適配器,將數(shù)據(jù)添加到ListView中。
3 結(jié)束語
通過自行設(shè)計和開發(fā)基于云服務(wù)的android分享軟件,我們逐漸了解社交軟件的設(shè)計模式和結(jié)構(gòu),同時也深刻體會到互聯(lián)網(wǎng)作為一個載體與各行各業(yè)的緊密聯(lián)系性。該軟件很多功能還比較落后,在以后的時間里將進(jìn)一步深入學(xué)習(xí)android開發(fā)知識,結(jié)合實(shí)踐,設(shè)計出更好的作品出來。
參考文獻(xiàn)
[1]楊煒,張冰.基于Android的騰訊微博客戶端應(yīng)用軟件設(shè)計[D].西安:西安電子科技大學(xué),2013.
[2]網(wǎng)上蜘蛛2012.天涯問答:什么是云技術(shù)?http://wenda.tianya.cn/answer/ 2012.03
[3]李寧寧,鄭純軍.基于Android平臺網(wǎng)絡(luò)相冊的設(shè)計與實(shí)現(xiàn)[J].電視技術(shù),2013,37(15):71-73
[4]李寧寧,王遠(yuǎn)飛,張冉.基于Android的校園應(yīng)用軟件開發(fā)與實(shí)現(xiàn)[D].大連:大連理工大學(xué),2014(10).