掌上校園助手的設(shè)計(jì)與實(shí)現(xiàn)_第1頁
掌上校園助手的設(shè)計(jì)與實(shí)現(xiàn)_第2頁
掌上校園助手的設(shè)計(jì)與實(shí)現(xiàn)_第3頁
掌上校園助手的設(shè)計(jì)與實(shí)現(xiàn)_第4頁
掌上校園助手的設(shè)計(jì)與實(shí)現(xiàn)_第5頁
已閱讀5頁,還剩19頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

掌上校園助手的設(shè)計(jì)與實(shí)現(xiàn)THEDESIGNANDIMPLEMENTATIONOFPALMCAMPUSASSISTANT目錄摘要 5關(guān)鍵詞 51前言 62系統(tǒng)分析與設(shè)計(jì) 72.1可行性分析 72.1.1社會(huì)可行性分析 72.1.2技術(shù)可行性 72.1.3經(jīng)濟(jì)可行性 72.2需求分析 72.3設(shè)計(jì)框架 82.4物理架構(gòu) 93相關(guān)技術(shù)概述 93.1Android平臺(tái) 93.2JSON技術(shù) 103.3JSP技術(shù) 113.4JDBC技術(shù) 114系統(tǒng)設(shè)計(jì) 114.1數(shù)據(jù)庫設(shè)計(jì) 114.1.1數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計(jì) 114.1.2數(shù)據(jù)庫邏輯設(shè)計(jì) 124.2開發(fā)環(huán)境配置 135程序設(shè)計(jì) 135.1登錄模塊 135.2主界面 165.3校園動(dòng)態(tài)界面 165.4在線反饋 175.5個(gè)人資料界面 186系統(tǒng)展示 206.1登陸界面 206.2主界面 216.3校園動(dòng)態(tài) 226.4在線反饋 237系統(tǒng)測(cè)試 237.1測(cè)試目的 237.2測(cè)試環(huán)境與工具 237.3測(cè)試過程 248結(jié)論 24參考文獻(xiàn) 25致謝 26

掌上校園助手的設(shè)計(jì)與實(shí)現(xiàn)摘要:隨著互聯(lián)網(wǎng)技術(shù)的發(fā)展和應(yīng)用,智能手機(jī)的使用用戶持續(xù)增長(zhǎng),根據(jù)中國(guó)互聯(lián)網(wǎng)絡(luò)信息中心CNNIC發(fā)布的第45次《中國(guó)互聯(lián)網(wǎng)絡(luò)發(fā)展?fàn)顩r統(tǒng)計(jì)報(bào)告顯示》,截至2020年3月,我國(guó)網(wǎng)民規(guī)模為9.04億,使用手機(jī)上網(wǎng)的比例達(dá)99.3%。基于此現(xiàn)狀,本文將討論設(shè)計(jì)一款基于Android的個(gè)性化掌上校園助手平臺(tái),實(shí)現(xiàn)校園動(dòng)態(tài)查看,在線反饋,查詢修改個(gè)人信息功能。關(guān)鍵詞:Android;掌上校園助手;個(gè)性化平臺(tái)THEDESIGNANDIMPLEMENTATIONOFPALMCAMPUSASSISTANTAbstract:WiththedevelopmentandapplicationofInternettechnology,theusersofsmartphonescontinuetogrow.Accordingtothe45thstatisticalreportonthedevelopmentofInternetinChinaissuedbyCNNIC,ChinaInternetNetworkInformationCenter,asofMarch2020,thenumberofInternetusersinChinais904million,accountingfor99.3%ofthetotal.Basedonthissituation,thispaperwilldiscussanddesignapersonalizedpalmcampusAssistantPlatformBasedonAndroidtorealizethefunctionsofcampusdynamicview,onlinefeedback,queryandmodifypersonalinformation.Keywords:Android;Palmcampusassistant;Personalizedplatform1前言伴隨著改革開放的春風(fēng),人民的物質(zhì)消費(fèi)水平日益提高,手機(jī)也從少數(shù)人才能使用的奢侈品變?yōu)槿耸忠徊康纳畋匦杵?,隨著大數(shù)據(jù)時(shí)代的到來,智能手機(jī)作為新時(shí)代的產(chǎn)物,走進(jìn)了大眾的視線。不同于以往的非智能手機(jī)只能接打電話和收發(fā)短信,只能手機(jī)更是承擔(dān)了人們的娛樂需求,由于4G的普及,民眾通過不同的手機(jī)應(yīng)用即可完成視頻聊天,地圖導(dǎo)航,游戲休閑等活動(dòng),根據(jù)相關(guān)統(tǒng)計(jì)數(shù)據(jù)顯示,2017年12月各熱門行業(yè)APP用戶使用時(shí)長(zhǎng)發(fā)現(xiàn),移動(dòng)社交、購物、音樂、新聞資訊等領(lǐng)域的APP呈現(xiàn)出寡頭化現(xiàn)象[1],同時(shí)智能手機(jī)的使用用戶持續(xù)增長(zhǎng),根據(jù)中國(guó)互聯(lián)網(wǎng)絡(luò)信息中心CNNIC發(fā)布的第45次《中國(guó)互聯(lián)網(wǎng)絡(luò)發(fā)展?fàn)顩r統(tǒng)計(jì)報(bào)告顯示》,截至2020年3月,我國(guó)網(wǎng)民規(guī)模為9.04億,使用手機(jī)上網(wǎng)的比例達(dá)99.3%[2],智能手機(jī)已經(jīng)滲透到我們生活中的方方面面。而各大高校也在推行自己的智能校園,如何在高校飛速發(fā)展擴(kuò)張的情況下,保持相應(yīng)的沉淀與積累,更好的建設(shè)與自己文化底蘊(yùn)相符合的智能校園系統(tǒng),無疑對(duì)各大高校都是挑戰(zhàn)。丁欣等學(xué)者基于實(shí)際應(yīng)用需求研究設(shè)計(jì)了一款后臺(tái)采用新浪云服務(wù)器進(jìn)行搭建,客戶端基于Android、iOS和微信平臺(tái)實(shí)現(xiàn)的多平臺(tái)系統(tǒng)[3],主要功能模塊為信息查詢,大學(xué)生可以利用該系統(tǒng)查詢考試,課表,四六級(jí),圖書情況,該軟件基于大學(xué)生實(shí)際使用場(chǎng)景出發(fā)設(shè)計(jì),十分貼近日常大學(xué)生群體的使用情況,受到了一致性的好評(píng)。而國(guó)外高校智能化校園進(jìn)程更是遠(yuǎn)遠(yuǎn)高于我們,如Lifeline

Response

,是一款適用于校園生活的安保類

應(yīng)用,專為在校師生設(shè)計(jì),可以快速通過該應(yīng)用啟動(dòng)

手機(jī)自帶的GPS

定位,將信息和定位傳輸給警方或校內(nèi)安保[4],哈佛劍橋等知名學(xué)府早早就擁有了一套基于自身智慧校園而進(jìn)行開發(fā)研究的掌上校園系統(tǒng)。我校也有相應(yīng)的掌上校園助手,能夠提供諸如動(dòng)態(tài)瀏覽,水電費(fèi)查詢等基本功能,本文將基于國(guó)內(nèi)外優(yōu)秀的同類應(yīng)用著手出發(fā)設(shè)計(jì),橫向?qū)Ρ日页霾煌瑧?yīng)用的相似之處,取長(zhǎng)補(bǔ)短,去粗取精,設(shè)計(jì)出一款基于Android系統(tǒng)的掌上校園助手應(yīng)用。2系統(tǒng)分析與設(shè)計(jì)2.1可行性分析2.1.1社會(huì)可行性分析安卓系統(tǒng)作為第一個(gè)完全開源的系統(tǒng),支持各大廠商和用戶自己設(shè)計(jì)創(chuàng)造第三方應(yīng)用軟件程序[5],同時(shí)占據(jù)著全球第一的市場(chǎng)份額[6],當(dāng)今高校學(xué)生幾乎人手一部Android手機(jī),針對(duì)大多數(shù)學(xué)生的掌上移動(dòng)校園助手將得到最大程度的接受度,現(xiàn)在的學(xué)生需要在學(xué)校的廣播展覽墻才能獲知相應(yīng)的校園最新動(dòng)態(tài),需要到相應(yīng)社團(tuán)地點(diǎn)才能獲悉社團(tuán)情況決定加不加入,需要詢問專門的創(chuàng)業(yè)就業(yè)老師才能獲知?jiǎng)?chuàng)業(yè)信息,智能校園的發(fā)展和落后的現(xiàn)狀沖突的情況下,學(xué)生對(duì)于移動(dòng)端的掌上校園助手對(duì)的需求只會(huì)越來越高。2.1.2技術(shù)可行性Android應(yīng)用的開發(fā)基于AndroidStudio,同時(shí)Android平臺(tái)還提供了豐富的開發(fā)環(huán)境。它包括設(shè)備模擬器、調(diào)試工具、內(nèi)存及性能分析圖表和Eclipse集成開發(fā)環(huán)境插件[7],數(shù)據(jù)庫方面采用MYSQL編寫。本軟件是基于Eclipse的開發(fā)環(huán)境,依托Tomcat服務(wù)器上的后臺(tái)數(shù)據(jù),開發(fā)出了針對(duì)Android平臺(tái)的校園APP系統(tǒng)。2.1.3經(jīng)濟(jì)可行性本軟件由本人設(shè)計(jì),相應(yīng)的圖片和素材均來自免費(fèi)使用的網(wǎng)絡(luò)素材,開發(fā)費(fèi)用為零,同時(shí)掌上校園助手旨在惠及在校師生,故運(yùn)行費(fèi)用和后期效益都不在考慮范圍內(nèi),可以由學(xué)校代為承擔(dān)。2.2需求分析借鑒以往的開發(fā)經(jīng)驗(yàn)與市場(chǎng)上的同類應(yīng)用比較,總結(jié)出本系統(tǒng)所需要實(shí)現(xiàn)的功能需求如圖1所示。圖1校園助手應(yīng)用功能結(jié)構(gòu)圖Fig1Campusassistantapplicationfunctionstructure登錄功能。注冊(cè)用戶方可以使用本系統(tǒng),使用系統(tǒng)前必須先登錄。系統(tǒng)主菜單。用戶登錄成功后進(jìn)入系統(tǒng)主菜單頁面,通過選擇不同的選項(xiàng)進(jìn)入相應(yīng)的操作頁面。校園動(dòng)態(tài)。用戶可以在此頁面查詢相應(yīng)的校園有關(guān)動(dòng)態(tài)。在線反饋。用戶在此頁面可以查看到頁面反饋情況。個(gè)人資料。用戶在此頁面可以進(jìn)行用戶信息的修改。就業(yè)指導(dǎo)。用戶在此頁面可以進(jìn)行就業(yè)信息的查詢。社團(tuán)信息。用戶在此頁面可以進(jìn)行社團(tuán)信息的查看。2.3設(shè)計(jì)框架校園助手的開發(fā)采用MVC(Model-View-Controller)的模式[8]。Model是應(yīng)用程序中用于處理應(yīng)用程序數(shù)據(jù)邏輯的部分,通常模型對(duì)象負(fù)責(zé)在數(shù)據(jù)庫中存取數(shù)據(jù);View是應(yīng)用程序中處理數(shù)據(jù)顯示的部分,通常視圖是依據(jù)模型數(shù)據(jù)創(chuàng)建的;Controller是應(yīng)用程序中處理用戶交互的部分,通常控制器負(fù)責(zé)從視圖讀取數(shù)據(jù),控制用戶輸入,并向模型發(fā)送數(shù)據(jù)。MVC的結(jié)構(gòu)圖如圖2所示。圖2MVC結(jié)構(gòu)圖Fig2MVCStructurechart2.4物理架構(gòu)最基本的校園校園信息平臺(tái)僅提供校園網(wǎng)站服務(wù),學(xué)生能在校內(nèi)校外訪問網(wǎng)站服務(wù),信息平臺(tái)的主要功能是傳遞信息供用戶查閱,同時(shí)校園網(wǎng)站可以在后臺(tái)上傳文件更改信息,未來的校園平臺(tái)會(huì)被整合,即“一站式服務(wù)”,提供客戶端下載,隨時(shí)更新校園動(dòng)態(tài),獲取最新消息[9]。其物理架構(gòu)如圖3所示。圖3校園網(wǎng)絡(luò)拓?fù)鋱D[9]Fig3Campusnetworktopology3相關(guān)技術(shù)概述3.1Android平臺(tái)安卓是一種基于Linux內(nèi)核的自由及開放源代碼的操作系統(tǒng)。主要使用于移動(dòng)設(shè)備,如智能手機(jī)和平板電腦,由美國(guó)Google公司和開放手機(jī)聯(lián)盟領(lǐng)導(dǎo)及開發(fā)。Android操作系統(tǒng)最初由AndyRubin開發(fā),主要支持手機(jī)。2005年8月由Google收購注資。2007年11月,Google與84家硬件制造商、軟件開發(fā)商及電信營(yíng)運(yùn)商組建開放手機(jī)聯(lián)盟共同研發(fā)改良Android系統(tǒng)。隨后Google以Apache開源許可證的授權(quán)方式,發(fā)布了Android的源代碼。第一部Android智能手機(jī)發(fā)布于2008年10月。Anroid系統(tǒng)架構(gòu)和其操作系統(tǒng)一樣,采用了分層的架構(gòu),從高到低分為四層[14],如圖4所示。(1)應(yīng)用層:應(yīng)用是用java語言編寫的運(yùn)行在虛擬機(jī)上的程序,比如Email客戶端,SMS短消息程序,日歷等。(2)應(yīng)用框架層:這一層是編寫Google發(fā)布的核心應(yīng)用時(shí)所使用的API框架,開發(fā)人員同樣可以使用這些框架來開發(fā)自己的應(yīng)用,這樣便簡(jiǎn)化了程序開發(fā)的結(jié)構(gòu)設(shè)計(jì),但是必須要遵守其框架的開發(fā)原則。(3)系統(tǒng)運(yùn)行庫(C/C++庫以及Android運(yùn)行庫)層:當(dāng)使用Android應(yīng)用框架時(shí),Android系統(tǒng)會(huì)通過一些C/C++庫來支持我們使用的各個(gè)組件,使其更好的為我們服務(wù),比如其中的SQLite(關(guān)系數(shù)據(jù)庫),Webkit(Web瀏覽器引擎)。(4)Linux內(nèi)核層:Android的核心系統(tǒng)服務(wù)給予Linux2.6內(nèi)核,如安全性、內(nèi)存管理、進(jìn)程管理、網(wǎng)絡(luò)協(xié)議棧和驅(qū)動(dòng)模型等都依賴于該內(nèi)核,比如BinderIPC(InternetProcessConnection進(jìn)程間通信)驅(qū)動(dòng),android的一個(gè)特殊驅(qū)動(dòng)程序,具有單獨(dú)的設(shè)備節(jié)點(diǎn),提供進(jìn)程間通信的功能。圖4Android系統(tǒng)框架圖Fig4AndroidSystemframediagram3.2JSON技術(shù)JSON是存儲(chǔ)和交換文本信息的語法,作為新一代數(shù)據(jù)交換語言,因?yàn)檩p量級(jí)、效率高等優(yōu)點(diǎn),得到了大量使用[10]。JSON由Javascript語法來描述數(shù)據(jù)對(duì)象,它的解析器和JSON庫具備很強(qiáng)的兼容性,因此它不依賴于任何語言和平臺(tái),這些特性使JSON成為理想的數(shù)據(jù)交換語言。易于機(jī)器解析、生成和人閱讀和編寫。3.3JSP技術(shù)JSP全稱JavaServerPages,是一種動(dòng)態(tài)網(wǎng)頁開發(fā)技術(shù)。它使用JSP標(biāo)簽在HTML網(wǎng)頁中插入Java代碼。標(biāo)簽通常以<%開頭以%>結(jié)束。JSP是一種Javaservlet,主要用于實(shí)現(xiàn)Javaweb應(yīng)用程序的用戶界面部分。網(wǎng)頁開發(fā)者們通過結(jié)合HTML代碼、XHTML代碼、XML元素以及嵌入JSP操作和命令來編寫JSP。JSP通過網(wǎng)頁表單獲取用戶輸入數(shù)據(jù)、訪問數(shù)據(jù)庫及其他數(shù)據(jù)源,然后動(dòng)態(tài)地創(chuàng)建網(wǎng)頁。JSP標(biāo)簽有多種功能,比如訪問數(shù)據(jù)庫、記錄用戶選擇信息、訪問JavaBeans組件等,還可以在不同的網(wǎng)頁中傳遞控制信息和共享信息。JSP具備了Java技術(shù)所具備的特點(diǎn),操作簡(jiǎn)單,面向?qū)ο螅皇芷脚_(tái)約束,安全性強(qiáng),如果對(duì)JSP進(jìn)行一個(gè)簡(jiǎn)單的介紹,一個(gè)等式表達(dá):HTML+Java=JSP[11]。3.4JDBC技術(shù)JDBC全稱JavaDatabaseConnectivity,是Java語言中用來規(guī)范客戶端程序如何來訪問數(shù)據(jù)庫的應(yīng)用程序接口,提供了諸如查詢和更新數(shù)據(jù)庫中數(shù)據(jù)的方法。JDBC常用接口:JAVAAPI:提供對(duì)JDBC的管理鏈接。JAVADriverAPI:支持JDBC管理到驅(qū)動(dòng)器連接。Connection:與數(shù)據(jù)庫中的所有的通信是通過唯一的連接對(duì)象。Statement:把創(chuàng)建的SQL對(duì)象,轉(zhuǎn)而存儲(chǔ)到數(shù)據(jù)庫當(dāng)中。ResultSet:它是一個(gè)迭代器,用于檢索查詢數(shù)據(jù)。DriverManager:這個(gè)類管理數(shù)據(jù)庫驅(qū)動(dòng)程序的列表,查看加載的驅(qū)動(dòng)是否符合JAVADriverAPI的規(guī)范。4系統(tǒng)設(shè)計(jì)4.1數(shù)據(jù)庫設(shè)計(jì)4.1.1數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計(jì)依據(jù)功能需求,本設(shè)計(jì)服務(wù)端具體實(shí)體有管理員,新聞,個(gè)人信息,在線反饋等一些實(shí)體。管理員信息實(shí)體:包括登錄名,密碼,ID。新聞信息實(shí)體:包括時(shí)間,標(biāo)題,圖片,ID,內(nèi)容。個(gè)人信息實(shí)體:包括密碼,登錄名,用戶名,地址,手機(jī)。在線反饋實(shí)體:包括標(biāo)題,內(nèi)容,用戶。4.1.2數(shù)據(jù)庫邏輯設(shè)計(jì)(1)管理員結(jié)構(gòu)表如表1所示,主要包括ID,登錄名,密碼等屬性,主鍵是ID。表1管理員表結(jié)構(gòu)Table1administratortablestructure屬性數(shù)據(jù)類型長(zhǎng)度說明Idint11主鍵Id自增Namevarchar20登錄名Passwordvarchar20密碼Screen_namevarchar20昵稱Typevarchar1管理員類型(2)用戶表結(jié)構(gòu)如表2所示,主要包括uid,登錄名,昵稱,密碼,電話,地址,主鍵是uid。表2用戶表結(jié)構(gòu)Table2usertablestructure屬性數(shù)據(jù)類型長(zhǎng)度說明uidint11主鍵Id自增User_useridvarchar32登錄名User_usernamevarchar16密碼User_passwordvarchar32昵稱User_phonevarchar32電話User_addressvarchar255地址(3)校園咨詢表結(jié)構(gòu)如表3所示,主要包括id,標(biāo)題,圖片,內(nèi)容,時(shí)間,類別,主鍵是id。表3校園資訊表結(jié)構(gòu)Table3campusinformationtablestructure屬性數(shù)據(jù)類型長(zhǎng)度說明idint11主鍵id自增biaotivarchar50標(biāo)題tupianvarchar200圖片neirongvarchar2000內(nèi)容shijianvarchar200時(shí)間leibievarchar200類別4.2開發(fā)環(huán)境配置搭建Android開發(fā)環(huán)境,需要使用到以下工具:JDK、Eclipse、AndroidSDK、ADT。首先在下載并安裝JDK,安裝的默認(rèn)路徑為windows所在的根目錄,安裝完成后就重啟即可,其次是配置環(huán)境變量,讓其在開機(jī)時(shí)要自動(dòng)調(diào)用JDK系統(tǒng)文件。ADT是平臺(tái)下開發(fā)Android應(yīng)用程序系統(tǒng)的組件,需下載并安裝。AndroidSDK是Android專用的軟件工具開發(fā)包,下載后在工具欄上的PoenstheAndroidSDKandAVDManager,運(yùn)行虛擬設(shè)備管理器,點(diǎn)擊New按鈕新建一臺(tái)設(shè)備,然后設(shè)置相應(yīng)值,點(diǎn)擊CreatAVD按鈕來完成創(chuàng)建工作,點(diǎn)擊Start啟動(dòng)設(shè)備,啟動(dòng)完成后有圖5所示界面即為成功。圖5啟動(dòng)樣式Fag5Presentationstyle5程序設(shè)計(jì)5.1登錄模塊登錄模塊提供用戶登錄功能,當(dāng)用戶輸入賬號(hào)密碼為空時(shí)進(jìn)行提示,當(dāng)用戶賬號(hào)密碼錯(cuò)誤時(shí)不允許登錄,只有正確的賬號(hào)密碼才能登入主界面,同時(shí)允許用戶進(jìn)行賬號(hào)注冊(cè),部分代碼如下:(1)用戶名或密碼為空:licvoidonClick(Viewv){ Stringuin=et_id.getText().toString().trim(); Stringpwd=et_password.getText().toString().trim(); if((uin.length()==0)||(pwd.length()==0)){ Toast.makeText(LoginActivity.this,"用戶名或者密碼不能為空", Toast.LENGTH_LONG).show(); return;(2)用戶名或密碼錯(cuò)誤: elseif(content.equals("false")){ runOnUiThread(newRunnable(){ publicvoidrun(){ dialog.dismiss(); Toast.makeText(LoginActivity.this,"帳號(hào)不存在或用戶名密碼錯(cuò)誤!",Toast.LENGTH_LONG).show(); } }); }else{ runOnUiThread(newRunnable(){ publicvoidrun(){ dialog.dismiss(); Toast.makeText(LoginActivity.this,"登錄失敗,請(qǐng)稍后再試!",Toast.LENGTH_LONG).show(); } });(3)注冊(cè)界面:try{ userObject.put("userId",userId); userObject.put("userName",userName); userObject.put("password",password); userObject.put("phone",phone); userObject.put("address",address); if(HttpUtil.isConnectInternet(RegisterAccountActivity.this)){ HttpPostpost=newHttpPost(Constants.SERVER+Constants.SERVER_REGISTER); List<BasicNameValuePair>params=newArrayList<BasicNameValuePair>(); params.add(newBasicNameValuePair("register",userObject.toString())); Log.i(RegisterAccountActivity.class.getCanonicalName(),userObject.toString()); post.setEntity(newUrlEncodedFormEntity(params,HTTP.UTF_8)); post.getParams().setBooleanParameter( CoreProtocolPNames.USE_EXPECT_CONTINUE,false); HttpResponseresponse=(HttpResponse)newDefaultHttpClient().execute(post); if(response!=null){ if(200==response.getStatusLine().getStatusCode()){ InputStreamis=response.getEntity().getContent(); Readerreader=newBufferedReader(newInputStreamReader(is)); StringBuilderbuilder=newStringBuilder((int)response.getEntity().getContentLength()); char[]temp=newchar[4000]; intlen=0; while((len=reader.read(temp))!=-1){ builder.append(temp,0,len); } reader.close(); is.close(); Stringcontent=builder.toString(); response.getEntity().consumeContent(); Log.i(RegisterAccountActivity.class.getCanonicalName(),content.trim()); if(content.trim().equals("ERROR")){ dialog.dismiss(); Toast.makeText(RegisterAccountActivity.this,"注冊(cè)失敗,請(qǐng)稍后再試!",Toast.LENGTH_LONG).show(); }elseif(content.trim().equals("EXISTSUSER")){ runOnUiThread(newRunnable(){ publicvoidrun(){ dialog.dismiss(); Toast.makeText(RegisterAccountActivity.this,"該帳號(hào)已存在!",Toast.LENGTH_LONG).show(); } }); }else{ runOnUiThread(newRunnable(){ publicvoidrun(){ dialog.dismiss(); Toast.makeText(RegisterAccountActivity.this,"注冊(cè)成功!"5.2主界面用戶登錄成功后進(jìn)入主界面,在主界面可以通過不同的按鍵進(jìn)入校園動(dòng)態(tài),就業(yè)指導(dǎo),校園信息,在線反饋,個(gè)人資料界面,相關(guān)界面布局的XML文件封裝到main_wp.xml文件中,這里以就業(yè)指導(dǎo)部分布局代碼進(jìn)行展示,代碼如下:android:layout_width="fill_parent" android:layout_height="fill_parent" android:text="就業(yè)指導(dǎo)" android:textColor="@android:color/white" android:textSize="24sp" android:paddingLeft="25dp" android:paddingTop="20dp" android:paddingRight="20dp"5.3校園動(dòng)態(tài)界面校園動(dòng)態(tài)界面可以下載獲取在服務(wù)器端的內(nèi)容以及圖片并顯示,部分實(shí)現(xiàn)代碼如下:publicvoidonCreate(BundlesavedInstanceState){ super.onCreate(savedInstanceState); setContentView(R.layout.gonggao_info); gonggao=(Gonggao)getIntent().getSerializableExtra("object"); TextViewtv_biaoti=(TextView)this.findViewById(R.id.biaoti); tv_biaoti.setText(gonggao.biaoti); // 從服務(wù)器上獲取圖片,并且顯示 ImageViewiv=(ImageView)this.findViewById(R.id.tupian);StringpicPath=Constants.WEB_APP_URL+gonggao.tupian; AsyncImageLoaderasyncImageLoader=newAsyncImageLoader(); DrawablecachedImage=asyncImageLoader.loadDrawable( picPath,iv,newImageCallback(){ publicvoidimageLoaded(DrawableimageDrawable, ImageViewimageView,StringimageUrl){ imageView.setImageDrawable(imageDrawable); } }); if(cachedImage==null){ iv.setImageResource(R.drawable.pork); }else{ iv.setImageDrawable(cachedImage); }5.4在線反饋在線反饋界面用戶可提交留言,也看查看留言列表,實(shí)現(xiàn)代碼如下:publicvoidonClick(Viewv){ showDialog(0); newThread(){ publicvoidrun(){ try{ JSONObjectjsonObject=newJSONObject(); jsonObject.put("biaoti",ed_biaoti.getText().toString()); // jsonObject.put("biaoti",type); jsonObject.put("neirong",ed_neirong.getText().toString()); jsonObject.put("shijian",""); jsonObject.put("yonghu",AppContext.userinfo.getUserName()); jsonObject.put("uid",Constants.userId); HttpPostpost=newHttpPost(Constants.SERVER+"/jiaoliu.do?method=saveJson"); List<BasicNameValuePair>params=newArrayList<BasicNameValuePair>(); params.add(newBasicNameValuePair("jiaoliu",jsonObject.toString())); post.setEntity(newUrlEncodedFormEntity(params,HTTP.UTF_8)); post.getParams().setBooleanParameter(CoreProtocolPNames.USE_EXPECT_CONTINUE,false); HttpResponseresponse=(HttpResponse)newDefaultHttpClient().execute(post); if(response!=null){ if(200==response.getStatusLine().getStatusCode()){ InputStreamis=response.getEntity().getContent(); Readerreader=newBufferedReader(newInputStreamReader(is)); StringBuilderbuilder=newStringBuilder((int)response.getEntity().getContentLength()); char[]temp=newchar[4000]; intlen=0; while((len=reader.read(temp))!=-1){ builder.append(temp,0,len); } reader.close(); is.close(); finalStringcontent=builder.toString(); response.getEntity().consumeContent(); runOnUiThread(newRunnable(){ publicvoidrun(){ removeDialog(0); if(!content.trim().equals("ERROR")){ JiaoliuInfoAddActivity.this.finish(); Toast.makeText(JiaoliuInfoAddActivity.this,"添加成功",Toast.LENGTH_LONG).show(); }else{ Toast.makeText(JiaoliuInfoAddActivity.this,"添加失敗",Toast.LENGTH_LONG).show(); } } });5.5個(gè)人資料界面在個(gè)人資料界面,用戶可以自行更改密碼,地址,手機(jī)等信息,實(shí)現(xiàn)代碼如下:publicvoidonClick(Viewv){ finalStringpassword2=etUserPassword2.getText().toString().trim(); finalStringuserName=etUserName.getText().toString().trim(); finalStringphone=etPhone.getText().toString().trim(); finalStringaddress=etAddress.getText().toString().trim(); dialog=newProgressDialog(UpdateUserInfoActivity.this); dialog.setMessage("正在修改...請(qǐng)稍候"); dialog.show(); newThread(){ publicvoidrun(){ JSONObjectuserObject=newJSONObject(); try{ userObject.put("userName",userName); userObject.put("password",password2); userObject.put("phone",phone); userObject.put("address",address); userObject.put("uid",userinfo.getUid()); if(HttpUtil.isConnectInternet(UpdateUserInfoActivity.this)){ HttpPostpost=newHttpPost(AppContext.SERVER_UPDATEUSER); List<BasicNameValuePair>params=newArrayList<BasicNameValuePair>(); params.add(newBasicNameValuePair("user",userObject.toString())); post.setEntity(newUrlEncodedFormEntity(params,HTTP.UTF_8)); post.getParams().setBooleanParameter( CoreProtocolPNames.USE_EXPECT_CONTINUE,false); HttpResponseresponse=(HttpResponse)newDefaultHttpClient().execute(post); if(response!=null){ if(200==response.getStatusLine().getStatusCode()){ InputStreamis=response.getEntity().getContent(); Readerreader=newBufferedReader(newInputStreamReader(is)); StringBuilderbuilder=newStringBuilder((int)response.getEntity().getContentLength()); char[]temp=newchar[4000]; intlen=0; while((len=reader.read(temp))!=-1){ builder.append(temp,0,len); } reader.close(); is.close(); Stringcontent=builder.toString(); response.getEntity().consumeContent(); if(content.trim().equals("true")){ dialog.dismiss(); runOnUiThread(newRunnable(){ publicvoidrun(){ dialog.dismiss(); UpdateUserInfoActivity.this.finish(); Toast.makeText(UpdateUserInfoActivity.this,"修改用戶信息成功",Toast.LENGTH_LONG).show(); } }); }else{ runOnUiThread(newRunnable(){ publicvoidrun(){ dialog.dismiss(); Toast.makeText(UpdateUserInfoActivity.this,"修改用戶信息失敗",Toast.LENGTH_LONG).show(); } });6系統(tǒng)展示6.1登陸界面打開系統(tǒng)進(jìn)入登錄界面如圖6所示,該界面有登錄和注冊(cè)兩個(gè)選項(xiàng),輸入用戶名和密碼即可登錄,點(diǎn)擊注冊(cè)則進(jìn)入注冊(cè)頁面,輸入賬號(hào)密碼等信息進(jìn)行注冊(cè)。圖6注冊(cè)登錄界面Fag6Registrationlogininterface6.2主界面登錄成功后進(jìn)入主界面,主界面如圖7所示,有校園動(dòng)態(tài),就業(yè)指導(dǎo),社團(tuán)信息,在線反饋,個(gè)人資料,退出系統(tǒng)六個(gè)按鈕,點(diǎn)擊即可進(jìn)入相應(yīng)的功能界面。圖7主界面Fag7maininterface6.3校園動(dòng)態(tài)以校園動(dòng)態(tài)界面為例,點(diǎn)擊校園動(dòng)態(tài),進(jìn)入校園動(dòng)態(tài)界面,點(diǎn)開其中一條動(dòng)態(tài)信息,即可前往具體的動(dòng)態(tài)信息界面進(jìn)行瀏覽,如圖8所示。圖8校園動(dòng)態(tài)展示Fag8Campusdynamicdisplay6.4在線反饋進(jìn)入在線反饋界面,在在線反饋界面可以查看留言和點(diǎn)擊進(jìn)行留言按鈕留言,如圖9所示。圖9在線反饋界面Fag9Onlinefeedbackinterface7系統(tǒng)測(cè)試7.1測(cè)試目的在程序開發(fā)過程中,難免會(huì)出現(xiàn)一些錯(cuò)誤,而軟件測(cè)試作為軟件開發(fā)最末尾的階段,就是這樣一個(gè)測(cè)試錯(cuò)誤的階段。隨著網(wǎng)絡(luò)的發(fā)展,用戶對(duì)軟件的實(shí)際需求也有了很高的要求,然而在軟件實(shí)際原型的過程中,卻經(jīng)常遇到各式各樣的問題的問題,影響到用戶的正常體驗(yàn),所以應(yīng)該借助測(cè)試技術(shù)將軟件中隱藏的問題查找出來,這樣才可以方便有關(guān)技術(shù)人員在極短時(shí)間內(nèi)將問題處理掉,以確保網(wǎng)絡(luò)軟件的照常使用[12],盡可能的減少系統(tǒng)在運(yùn)行過程中所承擔(dān)的風(fēng)險(xiǎn)。7.2測(cè)試環(huán)境與工具測(cè)試是在Windows7系統(tǒng)下,WEB服務(wù)器采用Tomcat6.0版本,開發(fā)語言采用JSP、Java語言,數(shù)據(jù)庫使用的是MySQL,開發(fā)工具采用MyEclipse8.6,客戶端瀏覽器要求在IE6.0及以上版本。測(cè)試條件是程序環(huán)境配置好,正常運(yùn)行MyEclipse和MySQL數(shù)據(jù)庫正常運(yùn)行的條件下測(cè)試的,其中Android虛擬機(jī)版本為2.3。7.3測(cè)試過程黑盒測(cè)試法只需要在不同的集合中選取一個(gè)元素對(duì)其進(jìn)行測(cè)試,既方便又快捷,從而獲取測(cè)試條件,并了解計(jì)算機(jī)軟件程序功能的完整性[13]。它只檢查程序功能是否按照需求規(guī)格說明書的規(guī)定正常使用,程序是否能適當(dāng)?shù)亟邮蛰斎霐?shù)據(jù)而產(chǎn)生正確的輸出信息。黑盒測(cè)試著眼于程序外部結(jié)構(gòu),不考慮內(nèi)部邏輯結(jié)構(gòu),主要針對(duì)軟件界面和軟件功能進(jìn)行測(cè)試,這里僅以部分核心功能進(jìn)行相應(yīng)的測(cè)試,測(cè)試結(jié)果如表4所示。表4部分功能測(cè)試結(jié)果Table4Partialfunctiontestresults測(cè)試場(chǎng)景動(dòng)作預(yù)期結(jié)果實(shí)際結(jié)果登陸界面輸入用戶名密碼成功登錄成功登錄校園動(dòng)態(tài)界面點(diǎn)擊具體動(dòng)態(tài)進(jìn)入動(dòng)態(tài)瀏覽進(jìn)入動(dòng)態(tài)瀏覽在線反饋界面點(diǎn)擊我要留言進(jìn)入留言界面進(jìn)入留言界面?zhèn)€人信息界面修改密碼修改成功修改成功8結(jié)論本文根據(jù)當(dāng)前大數(shù)據(jù)時(shí)代下全民上網(wǎng)全民使用手機(jī)的背景,同時(shí)根據(jù)身邊大學(xué)生對(duì)掌上校園助手的需求,以及各大高校投入使用的同類應(yīng)用進(jìn)行比較,得出了設(shè)計(jì)掌上校園助手的可行性,并且通過對(duì)掌上校園助手的開發(fā)取得了以下成果:根據(jù)學(xué)生的需求出發(fā),并且經(jīng)過與同類應(yīng)用的橫向?qū)Ρ?,總結(jié)出了掌上校園最基礎(chǔ)也是最為重要的功能,即用戶注冊(cè)登錄功能,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論