◎陳志良 羅鋒懋 李祥斌 湯建明 陳曉倩 蒙儒省
大學(xué)生校園輔導(dǎo)教育手機(jī)應(yīng)用平臺(tái)
◎陳志良 羅鋒懋 李祥斌 湯建明 陳曉倩 蒙儒省
利用TCP/IP/HTTP協(xié)議設(shè)計(jì)了一種用于方便大學(xué)生學(xué)習(xí)生活的基于Android平臺(tái)的校園輔導(dǎo)教育手機(jī)應(yīng)用平臺(tái)。功能上該軟件總共分六大模塊,即抱大腿模塊、超級(jí)課堂模塊、約約模塊,聊聊模塊、小文庫(kù)模塊、神題模塊,用戶可以直接瀏覽信息。通過(guò)該APP可以實(shí)現(xiàn)學(xué)習(xí)資源共享以及創(chuàng)意學(xué)習(xí)互助輔導(dǎo)生態(tài)圈。該APP結(jié)合線下校園輔導(dǎo)班業(yè)務(wù),進(jìn)行線上宣傳帶動(dòng)消費(fèi),為廣大的消費(fèi)者提供價(jià)格更優(yōu)服務(wù)更好的輔導(dǎo)班。學(xué)生可以通過(guò)該app的抱大腿模塊向附近人尋求學(xué)習(xí)上的輔導(dǎo),通過(guò)積分換取現(xiàn)金的形式來(lái)帶動(dòng)流量。其中約約模塊為廣大學(xué)生提供組隊(duì)學(xué)習(xí)的機(jī)會(huì)。本系統(tǒng)還采用操作系統(tǒng)的FIFO技術(shù)處理圖片信息,加快了處理速度。
隨著科技的發(fā)展,信息化也逐漸成為當(dāng)代的潮流,越來(lái)越多的人從事軟件的開(kāi)發(fā)的工作,但是大多數(shù)人都只是關(guān)注到社會(huì)上的群體,而忽略了學(xué)生。而且很多軟件存在功能單一的問(wèn)題,導(dǎo)致人們不愿意為使用某種功能而特意安裝一款軟件,于是我們項(xiàng)目小組針對(duì)這一現(xiàn)象,以大學(xué)生為中心,決定開(kāi)發(fā)出一款針對(duì)大學(xué)生學(xué)習(xí)生活的軟件.
隨著時(shí)代的進(jìn)步,手機(jī)也變得越發(fā)重要,在大學(xué)幾乎人手一臺(tái)手機(jī),然而Android手機(jī)占了全部手機(jī)數(shù)量的80%,故手機(jī)方面擁有很大的市場(chǎng)。
功能設(shè)計(jì)
功能需求:基于Android平臺(tái)的移動(dòng)校園學(xué)習(xí)生活軟件系統(tǒng)主要包括客戶端和服務(wù)器兩部分。其中客戶端部分包括兩個(gè)部分:一是瀏覽信息,課程﹑及考試題搜索,發(fā)布求助信息;二是后臺(tái)發(fā)布信息管理部分,對(duì)用戶發(fā)布的每一條信息審核,上傳輔導(dǎo)老師的個(gè)人信息。
用例描述:采用面向?qū)ο蟮姆治龇椒?,將系統(tǒng)的用戶分為系統(tǒng)用戶和管理員兩種角色。
圖1 軟件開(kāi)發(fā)流程
系統(tǒng)的總體設(shè)計(jì)
系統(tǒng)的總體架構(gòu)?;?Android 平臺(tái)的校園校園輔導(dǎo)教育系統(tǒng)的總體架構(gòu)如圖2所示。
圖2 系統(tǒng)的總體架構(gòu)
Android 客戶端架構(gòu)。本文在 Android 客戶端采用 C/S 結(jié)構(gòu),客戶端的作用是:負(fù)責(zé)提供友好易用的與用戶交互的界面,供用戶查詢求助信息和輔導(dǎo)教育及時(shí)相關(guān)信息等服務(wù),以及負(fù)責(zé)與服務(wù)器端的數(shù)據(jù)交換。用戶與客戶端的交互是通過(guò) Activity 類構(gòu)建一個(gè)UI界面完成的。服務(wù)端與數(shù)據(jù)庫(kù)相連,實(shí)現(xiàn)對(duì)數(shù)據(jù)的操作。Android 客戶端與服務(wù)器端的數(shù)據(jù)交換是基于HTTP協(xié)議實(shí)現(xiàn)的。
系統(tǒng)的關(guān)鍵技術(shù)的實(shí)現(xiàn)
服務(wù)器整體設(shè)計(jì)。本節(jié)主要講述服務(wù)器代碼結(jié)構(gòu),功能實(shí)現(xiàn)原理。
監(jiān)聽(tīng)多人請(qǐng)求??蛻舳伺c服務(wù)器的交互主要通過(guò)HTTP協(xié)議進(jìn)行的數(shù)據(jù)交互。
圖像的處理。圖片的存儲(chǔ)采取了FIFO(first in first out)技術(shù),由于圖片頻繁訪問(wèn),用戶每次訪問(wèn)都要訪問(wèn)硬盤(pán),導(dǎo)致服務(wù)器運(yùn)行速度很慢,故加快圖片讀取尤其重要。實(shí)現(xiàn)原理如下,構(gòu)造一個(gè)圖片類,類里面有3個(gè)變量(圖片物理,圖片內(nèi)容,圖片訪問(wèn)指數(shù))系統(tǒng)分配一個(gè)容量為100的圖片類數(shù)組,程序也設(shè)置一個(gè)訪問(wèn)圖片計(jì)數(shù)器,每訪問(wèn)一次,計(jì)數(shù)器值加一,計(jì)數(shù)器值達(dá)到1000的時(shí)候,計(jì)數(shù)器歸0,每次客戶端訪問(wèn)圖片的時(shí)候先訪問(wèn)圖片類數(shù)組,如果找到了就把圖片訪問(wèn)指數(shù)設(shè)置為圖片訪問(wèn)計(jì)數(shù)器的值,如果沒(méi)有訪問(wèn)到就查找圖片訪問(wèn)指數(shù)比計(jì)數(shù)器值大且最接近計(jì)數(shù)器值的圖片圖片所在數(shù)組的下標(biāo)記為t1,同時(shí)查找圖片訪問(wèn)指數(shù)最小的圖片下標(biāo)t2,如果t1值存在,則用新訪問(wèn)的圖片代替下標(biāo)為t1的圖片,如果t1不存在,則用新訪問(wèn)的圖片代替下標(biāo)為t1的圖片。
圖3 系統(tǒng)的注冊(cè)驗(yàn)證
注冊(cè)登錄模塊的設(shè)計(jì)和實(shí)現(xiàn)。系統(tǒng)注冊(cè)模塊主要作用是如果用戶沒(méi)有賬號(hào)時(shí),注冊(cè)新的賬號(hào),用戶需要填入賬號(hào)和密碼和及個(gè)人信息,點(diǎn)擊注冊(cè)就可以完成注冊(cè),不過(guò)如果用戶不完全填寫(xiě)個(gè)人信息,兩次密碼不一致或者賬號(hào)和電話號(hào)碼已經(jīng)被注冊(cè),會(huì)提示用戶相應(yīng)錯(cuò)誤的信息,整個(gè)過(guò)程如圖所示。
用戶注冊(cè)成功后,用戶信息會(huì)保存到成員表中,用戶表主要包括用戶手機(jī)號(hào)﹑用戶名﹑密碼﹑年齡﹑性別﹑學(xué)校﹑學(xué)院﹑專業(yè)﹑學(xué)習(xí)標(biāo)簽﹑個(gè)人簽名﹑最喜歡書(shū)籍﹑最喜歡影視﹑個(gè)人說(shuō)明﹑個(gè)人頭像十四個(gè)字段,用戶表loginphone 如表1 所示。
表1 用戶注冊(cè)數(shù)據(jù)庫(kù)表
如果用戶的賬號(hào)或者手機(jī)號(hào)被別人注冊(cè)會(huì)拋出異常,服務(wù)器會(huì)把錯(cuò)誤的大致原因發(fā)送至客戶端。
登錄模塊設(shè)計(jì)和實(shí)現(xiàn)。用戶想要使用軟件首先要登錄,用戶打開(kāi)登錄界面,填寫(xiě)賬號(hào)和密碼,點(diǎn)擊登錄按鈕,系統(tǒng)會(huì)將用戶填寫(xiě)的賬號(hào)和密碼發(fā)送到服務(wù)器上面進(jìn)行對(duì)比,如果對(duì)比成功,則把客戶信息發(fā)送至客戶端并通知其登錄成功,保存用戶的登錄狀態(tài),及個(gè)人信息,否則提示賬號(hào)或密碼錯(cuò)誤信息。
超級(jí)課堂模塊設(shè)計(jì)和實(shí)現(xiàn)
超級(jí)課堂數(shù)據(jù)庫(kù)表設(shè)計(jì)。超級(jí)課堂老師基本信息數(shù)據(jù)庫(kù)表主要包括老師頭像﹑老師姓名﹑授課課程﹑報(bào)名人數(shù),授課形式﹑授課課時(shí)﹑授課時(shí)間﹑授課學(xué)院﹑授課單價(jià)﹑老師學(xué)歷﹑老師所在學(xué)院﹑老師聯(lián)系方式﹑老師個(gè)人介紹,并利用老師聯(lián)系方式來(lái)鎖定老師的發(fā)個(gè)人信息。具體如表4-2 所示。
報(bào)名方式實(shí)現(xiàn)。課程報(bào)名分為團(tuán)隊(duì)報(bào)名和個(gè)人報(bào)名。其中團(tuán)隊(duì)報(bào)名將獲取更大優(yōu)惠。
表2 老師基本信息數(shù)據(jù)表
系統(tǒng)測(cè)試環(huán)境的搭建
本系統(tǒng)我們選利用htpp協(xié)議編寫(xiě)的服務(wù)器,服務(wù)器監(jiān)聽(tīng)端口為6000,數(shù)據(jù)庫(kù)選擇Oracle公司的開(kāi)源數(shù)據(jù)庫(kù)的Mysql 數(shù)據(jù)庫(kù)。系統(tǒng)采用工廠模式來(lái)處理客戶端的請(qǐng)求,工廠模式可以將各個(gè)業(yè)務(wù)邏輯進(jìn)行有效的分離,方便系統(tǒng)功能的擴(kuò)展。
表3 團(tuán)隊(duì)報(bào)名信息數(shù)據(jù)表
部分功能測(cè)試
系統(tǒng)登錄模塊測(cè)試。點(diǎn)擊應(yīng)用程序后進(jìn)入主界面,點(diǎn)擊“登陸“即可進(jìn)入系統(tǒng)的登錄界面,如圖4所示。
圖4 登錄界面
點(diǎn)擊應(yīng)用程序后進(jìn)入主界面,點(diǎn)擊“注冊(cè)”即可進(jìn)入系統(tǒng)的手機(jī)賬號(hào)驗(yàn)證界面,如圖5所示。
圖5 手機(jī)驗(yàn)證界面
成功通過(guò)手機(jī)驗(yàn)證之后會(huì)進(jìn)入注冊(cè)頁(yè)面,如下圖6所示。
圖6 注冊(cè)界面
軟件主界面測(cè)試。用戶在主界面可以看到各個(gè)模塊的分類,點(diǎn)擊自己想要查看分類的圖標(biāo)或文字即可進(jìn)入所屬類別,如圖7所示。
圖7 軟件主頁(yè)面
經(jīng)過(guò)幾個(gè)月的開(kāi)發(fā)校園學(xué)習(xí)助手總算接近了尾聲,其中開(kāi)發(fā)期間出現(xiàn)過(guò)很多的問(wèn)題,比如說(shuō)版本適配,網(wǎng)絡(luò)連接等,但是多虧小組的相互支持,最后項(xiàng)目成功的完成。希望看到論文的你也能通過(guò)不懈努力,創(chuàng)造出屬于自己的產(chǎn)品。
(作者單位:桂林電子科技大學(xué)電子工程與自動(dòng)化學(xué)院)
本論文是2015年國(guó)家級(jí)大學(xué)生創(chuàng)新創(chuàng)業(yè)訓(xùn)練項(xiàng)目的階段性研究成果。項(xiàng)目編號(hào):201510595045