




已閱讀5頁,還剩47頁未讀, 繼續免費閱讀
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
程序設計課程設計報告學院軟件學院專業軟件工程時間2015年6月畢業設計(論文)任務書畢業設計(論文)題目基于ANDROID的個人健康管理系統畢業設計(論文)要求及原始數據(資料)1綜述個人健康管理系統應用研究現狀;2深入了解個人健康管理系統應用開發的相關技術;3熟練ANDROID的應用與分析,訓練編寫ANDROID應用程序的能力;4設計并實現個人健康管理系統應用;5深入分析個人健康管理系統應用開發的關鍵技術與編寫語言;6訓練檢索文獻資料和利用文獻資料的能力;7訓練撰寫技術文檔與學位論文的能力。畢業設計(論文)主要內容1綜述個人健康管理系統的應用;2了解個人健康管理系統應用的相關技術;3熟悉個人健康管理系統應用的ANDROID開發環境;4設計基于ANDROID的個人健康管理系統應用;5深入分析個人健康管理系統應用的設計流程;6熟練掌握個人健康管理系統應用的編寫;7設計與實現個人健康管理系統應用的程序。學生應交出的設計文件(論文)1內容完整、層次清晰、敘述流暢、排版規范的畢業設計論文;2包括畢業設計論文、源程序等內容在內的畢業設計電子文檔及其它相關材料。主要參考文獻(資料)1張利國代聞,龔海平ANDROID移動開發案例詳解M北京人民郵電出版社,20102王維虎,劉忠,李叢JAVA程序設計M華中科技大學出版社,20133程正權,尹春嬌,王光亞JAVA程序設計基礎與實訓M安徽科學技術出版社,20124吳想想基于ANDROID平臺軟件開發方法的研究與應用D北京郵電大學,20115馬駿驍布魯卡曹晨,關于UI不得不說的那些事J移動信息,20136FREEMAN,EHEADFIRSTDESIGNPATTERNMOREILLYMEDIA,INC,20047鄭阿奇,丁有和,周怡君,鄭進ORACLE實用教程M,電子工業出版社,20138聶少萍,黃靜芝飲水健康及其影響性研究現狀J,華南預防醫學,20139JOHNSON,RICHARD,AJAVADATABASECONNECTIVITYUSINGSQLITEATUTORIALJ,ALLIEDACADEMIESINTERONTAIONALCONFERENCE,2014,1810MARKMURPHYBEGINNINGANDROID2MAPRESS,2010專業班級軟件1124班學生要求設計(論文)工作起止日期2015年3月23日2015年7月3日指導教師簽字日期2015年3月23日教研室主任審查簽字日期系主任批準簽字日期基于ANDROID的個人健康管理系統摘要隨著生活水平的提高,健康一詞的關注度越來越高,人們越來越注重鍛煉、養生。與此同時,移動端產品基于它的便捷性以及相關科技的迅速發展等,也在人們的日常中占有重要的一席。ANDROID是一個開源的開發語言,底層基于LINUX操作系統,并通過MVC模式,通過JAVA和XML配置共同進行開發。通過對ANDROID移動應用技術和健康管理知識的了解與研究,遵循軟件工程的開發模式,進行個人健康管理系統的應用開發。該應用實現了記錄日常鍛煉、休息提醒、健康飲水、推薦健康時蔬、健康評分等功能,通過ANDROID開源技術很好的提高了界面友好性,通過添加動畫、制作界面、彈出提示信息等方式優化人機交互性能。應用旨在通過移動端提供便捷的健康管理方式,方便大家健康度過每一天。關鍵詞ANDROID;健康管理;軟件工程;開源系統PERSONALHEALTHMANAGEMENTSYSTEMBASEDONANDROIDABSTRACTWITHTHEIMPROVEMENTOFLIVINGSTANDARDS,THEWORDOFHEALTHHASBEENPAIDMOREANDMOREATTENTION,ANDMOREANDMOREPEOPLEPAYATTENTIONTOEXERCISEANDHEALTHATTHESAMETIME,THEMOBILETERMINALPRODUCTSBASEDONITSCONVENIENCEANDRAPIDDEVELOPMENTOFTECHNOLOGY,ALSOPLAYSAKEYROLEINPEOPLESDAILYANDROIDISANOPENSOURCEPROGRAMMINGLANGUAGE,THEUNDERLYINGOPERATINGSYSTEMBASEDONLINUX,ANDCOMMONDEVELOPMENTPROJECTTHROUGHJAVAANDXMLCONFIGURATIONWITHMVCMODELTHROUGHUNDERSTANDINGANDSTUDYABOUTTHEANDROIDMOBILEAPPLICATIONTECHNOLOGYANDHEALTHMANAGEMENTKNOWLEDGE,FOLLOWTHESOFTWAREENGINEERINGDEVELOPMENTMODEL,DEVELOPINGTHEAPPLICATIONOFPERSONALHEALTHMANAGEMENTSYSTEMTHEAPPLICATIONHASFOLLOWINGFUNCTION,THERECORDSOFDAILYEXERCISE,RESTREMINDER,HEALTHYDRINKINGWATER,RECOMMENDEDHEALTHYVEGETABLES,HEALTHSCOREANDOTHERFUNCTIONSTHROUGHTHEANDROIDOPENSOURCETECHNOLOGYCANIMPROVETHEFRIENDLYOFINTERFACE,ANDTHROUGHADDITIONALANIMATION,BEAUTIFYTHEINTERFACE,POPUPPROMPTINFORMATIONANDOTHERWAYSTOOPTIMIZETHEPERFORMANCEOFHUMANCOMPUTERINTERACTIONAPPLICATIONOFHEALTHMANAGEMENTSYSTEMISWITHTHEPURPOSEOFPROVIDINGACONVENIENTWAYTOMANAGERHEALTHWITHTHEMOBILETERMINALANDHEALTHYTOSPENDEVERYDAYKEYWORDSANDROIDHEALTHMANAGEMENTSOFTWAREENGINEERINGOPENSOURCESYSTEM目錄基于ANDROID的個人健康管理系統PERSONALHEALTHMANAGEMENTSYSTEMBASEDONANDROID1引言111課題背景112編寫目的113關于ANDROID114關于MVC框架32可行性研究621技術可行性622經濟可行性623時間可行性63需求分析74總體設計841功能設計842數據庫設計943界面設計1044權限需求1145應用版本要求1146項目編寫環境要求115詳細設計1351LOGO界面設計1352登錄界面設計1353注冊界面設計1454主界面設計1555飲水管理界面設計1756鍛煉管理界面設計1857休息管理界面設計2058飲食管理界面設計2159評分系統界面設計22510個人信息管理界面設計246項目結果2661項目目錄結構圖2662項目主要界面展示2863項目部分代碼3164項目其它界面展示33結論36參考文獻37致謝381引言11課題背景隨著科技不斷發展,手機等移動產品憑借其便捷等特性已在人們日常生活中已占有重要的地位,移動端市場發展極為迅速,而現今主流的移動端操作系統便是IOS和ANDROID兩大系統。ANDROID是一種基于LINUX的自由及開放源代碼的操作系統,主要使用于移動設備,如智能手機和平板電腦,由GOOGLE公司和開放手機聯盟領導及開發。ANDROID操作系統最初由ANDYRUBIN開發,主要支持手機。2005年8月由GOOGLE收購注資。2007年11月,GOOGLE與84家硬件制造商、軟件開發商及電信營運商組建開放手機聯盟共同研發改良ANDROID系統。隨后GOOGLE以APACHE開源許可證的授權方式,發布了ANDROID的源代碼。生活水平的提高,使得人們已不滿足僅僅追求物質財富,精神財富也成為人們喜聞樂見的話題。其中,“健康”一詞的關注度也隨之提升,健康是人的基本權利,健康是人生的第一財富。健康包含的內容很多,現代人的健康內容包括軀體健康、心理健康、心靈健康、社會健康、智力健康、道德健康、環境健康等。身體健康是健康的前提,雖然健康的內容越來越多,但身體健康仍是最根本的一項。通過鍛煉、飲食、生活習慣等的改善以達到身體上的健康。擁有一個健康的身體,是大多數人追求健康的首要目標,是我們更好的追求精神與物質財富的重要保障。12編寫目的在快節奏的現代生活,一個移動端的應用符合了現代生活的快捷與便利,并通過健康管理系統督促個人進行健康的生活。本應用目的為提供一種方便的方式可以對個人健康起到一定的幫助。通過友好的界面效果,實現相應的健康管理功能。13關于ANDROIDANDROID一詞的本義指“機器人”,同時也是GOOGLE于2007年11月5日宣布的基于LINUX平臺的開源手機操作系統的名稱,該平臺由操作系統、中間件、用戶界面和應用軟件組成,號稱是首個為移動終端打造的真正開放和完整的移動軟件。它采用了軟件堆層(SOFTWARESTACK,又名以軟件疊層)的架構,主要分為三部分。低層以LINUX內核工作為基礎,只提供基本功能;其他的應用軟件則由各公司自行開發,以JAVA作為編寫程序的一部分。另外,為了推廣此技術,GOOGLE和其它幾十個手機公司建立了開放手機聯盟。ANDROID在未公開之前常被傳聞為GOOGLE電話。大多傳聞認為GOOGLE開發的是自己的手機電話產品,而不是一套軟件平臺。到了2010年1月,GOOGLE開始發表自家品牌手機電話的NEXUSONE。ANDROID系統有如下的幾大特性應用程序框架,支持組件的重用與替換;DALVIK虛擬機,專門為移動設備做了優化;內部集成瀏覽器,該瀏覽器基于開源的WEBKIT引擎;優化的圖形庫,包括2D和3D圖形庫,3D圖形庫基于OPENGLES;SQLITE,用作結構化的數據存儲;多媒體支持包括常見的音頻、視頻和靜態印象文件格式(如MPEG4,H264,MP3,AAC,AMR,JPG,PNG,GIF);GSM電話(依賴于硬件);藍牙BLUETOOTH,EDGE,3G,ANDWIFI(依賴于硬件);照相機,GPS,指南針和加速度計(依賴于硬件);豐富的開發環境,包括設備模擬器,調試工具,內存及性能分析圖表,和ECLIPSE集成開發環境插件。APPLICATIONS,ANDROID會同一個核心應用程序包一起發布,該應用程序包包括EMAIL客戶端,SMS短消息程序,日歷,地圖,瀏覽器,聯系人管理程序等。所有的應用程序都是用JAVA編寫的。APPLICATIONFRAMEWORK,開發者完全可以訪問核心應用程序所使用的API框架。該應用程序架構用來簡化組件軟件的重用;任何一個應用程序都可以發布它的功能塊并且任何其它的應用程序都可以使用其所發布的功能塊(不過得遵循框架的安全性限制)。該應用程序重用機制使得組建可以被用戶替換。所有的應用程序都由一系列的服務和系統組成,包括可擴展的視圖(VIEWS)可以用來建應用程序,包括列表(LISTS),網格(GRIDS),文本框(TEXTBOXES),按鈕(BUTTONS),甚至包括一個可嵌入的WEB瀏覽器;內容管理器(CONTENTPROVIDERS)使得應用程序可以訪問另一個應用程序的數據(如聯系人數據庫),或者共享它們自己的數據。;資源管理器(RESOURCEMANAGER)提供非代碼資源的訪問,如本地字符串,圖形,和分層文件(LAYOUTFILES);通知管理器(NOTIFICATIONMANAGER)使得應用程序可以在狀態欄中顯示客戶通知信息;活動類管理器(ACTIVITYMANAGER)用來管理應用程序生命周期并提供常用的導航回退功能。LIBRARIES庫,ANDROID包括一個被ANDROID系統中各種不同組件所使用的C/C庫集。該庫通過ANDROID應用程序框架為開發者提供服務。以下是一些主要的核心庫系統C庫,媒體庫,SURFACEMANAGER,LIBWEBCORE,SGL,FREETYPE,SQLITE。ANDROIDRUNTIME,ANDROID包括了一個核心庫,該核心庫提供了JAVA編程語言核心庫的大多數功能。每一個ANDROID應用程序都在它自己的進程中運行,都擁有一個獨立的DALVIK虛擬機實例。DALVIK是針對于同時高效地運行多個VMS來實現的。DALVIK虛擬機執行DEX的DALVIK可執行文件,該格式文件針對最小內存使用做了優化。該虛擬機是基于寄存器的,所有的類都經由JAVA匯編器編譯,然后通過SDK中的DX工具轉化成DEX格式由虛擬機,DALVIK虛擬機依賴于LINUX的一些功能,比如線程機制和底層內存管理機制。LINUX內核,ANDROID的核心系統服務依賴于LINUX26內核,如安全性,內存管理,進程管理,網絡協議棧和驅動模型。LINUX內核也同時作為硬件和軟件堆棧之間的硬件抽象層。其最震撼人心之處在于ANDROID手機系統的開放性和服務免費。ANDROID是一個對第三方軟件完全開放的平臺,開發者在為其開發程序時擁有更大的自由度,突破了IPHONE等只能添加為數不多的固定軟件的枷鎖;同時與WINDOWSMOBILE、SYMBIAN等廠商不同,ANDROID操作系統免費向開發人員提供,這樣可節省近三成成本。14關于MVC框架ANDROID應用程序的開發使用了MVC框架結構。MVC全名是MODELVIEWCONTROLLER,是模型MODEL視圖VIEW控制器CONTROLLER的縮寫,一種軟件設計典范,用一種業務邏輯、數據、界面顯示分離的方法組織代碼,將業務邏輯聚集到一個部件里面,在改進和個性化定制界面及用戶交互的同時,不需要重新編寫業務邏輯。MVC被獨特的發展起來用于映射傳統的輸入、處理和輸出功能在一個邏輯的圖形化用戶界面的結構中。MVC開始是存在于桌面程序中的,M是指業務模型,V是指用戶界面,C則是控制器,使用MVC的目的是將M和V的實現代碼分離,從而使同一個程序可以使用不同的表現形式。比如一批統計數據可以分別用柱狀圖、餅圖來表示。C存在的目的則是確保M和V的同步,一旦M改變,V應該同步更新。模型視圖控制器(MVC)是XEROXPARC在二十世紀八十年代為編程語言SMALLTALK80發明的一種軟件設計模式,已被廣泛使用。后來被推薦為ORACLE旗下SUN公司JAVAEE平臺的設計模式,并且受到越來越多的使用COLDFUSION和PHP的開發者的歡迎。模型視圖控制器模式是一個有用的工具箱,它有很多好處,但也有一些缺點。MVC是一個框架模式,它強制性的使應用程序的輸入、處理和輸出分開。使用MVC應用程序被分成三個核心部件模型、視圖、控制器。它們各自處理自己的任務。最典型的MVC就是JSPSERVLETJAVABEAN的模式。視圖,視圖是用戶看到并與之交互的界面。對老式的WEB應用程序來說,視圖就是由HTML元素組成的界面,在新式的WEB應用程序中,HTML依舊在視圖中扮演著重要的角色,但一些新的技術已層出不窮,它們包括ADOBEFLASH和像XHTML,XML/XSL,WML等一些標識語言和WEBSERVICESMVC好處是它能為應用程序處理很多不同的視圖。在視圖中其實沒有真正的處理發生,不管這些數據是聯機存儲的還是一個雇員列表,作為視圖來講,它只是作為一種輸出數據并允許用戶操縱的方式。模型,模型表示企業數據和業務規則。在MVC的三個部件中,模型擁有最多的處理任務。例如它可能用像EJBS和COLDFUSIONCOMPONENTS這樣的構件對象來處理數據庫,被模型返回的數據是中立的,就是說模型與數據格式無關,這樣一個模型能為多個視圖提供數據,由于應用于模型的代碼只需寫一次就可以被多個視圖重用,所以減少了代碼的重復性。控制器,控制器接受用戶的輸入并調用模型和視圖去完成用戶的需求,所以當單擊WEB頁面中的超鏈接和發送HTML表單時,控制器本身不輸出任何東西和做任何處理。它只是接收請求并決定調用哪個模型構件去處理請求,然后再確定用哪個視圖來顯示返回的數據。MVC框架優點有,耦合性低,視圖層和業務層分離,這樣就允許更改視圖層代碼而不用重新編譯模型和控制器代碼,同樣,一個應用的業務流程或者業務規則的改變只需要改動MVC的模型層即可。因為模型與控制器和視圖相分離,所以很容易改變應用程序的數據層和業務規則;重用性高,隨著技術的不斷進步,需要用越來越多的方式來訪問應用程序。MVC模式允許使用各種不同樣式的視圖來訪問同一個服務器端的代碼,因為多個視圖能共享一個模型,它包括任何WEB(HTTP)瀏覽器或者無線瀏覽器(WAP),比如,用戶可以通過電腦也可通過手機來訂購某樣產品,雖然訂購的方式不一樣,但處理訂購產品的方式是一樣的。由于模型返回的數據沒有進行格式化,所以同樣的構件能被不同的界面使用。例如,很多數據可能用HTML來表示,但是也有可能用WAP來表示,而這些表示所需要的命令是改變視圖層的實現方式,而控制層和模型層無需做任何改變。由于已經將數據和業務規則從表示層分開,所以可以最大化的重用代碼了。模型也有狀態管理和數據持久性處理的功能,例如,基于會話的購物車和電子商務過程也能被FLASH網站或者無線聯網的應用程序所重用;生命周期成本低,MVC使開發和維護用戶接口的技術含量降低;部署快,使用MVC模式使開發時間得到相當大的縮減,它使程序員(JAVA開發人員)集中精力于業務邏輯,界面程序員(HTML和JSP開發人員)集中精力于表現形式上;可維護性高,分離視圖層和業務邏輯層也使得WEB應用更易于維護和修改;有利軟件工程化管理,由于不同的層各司其職,每一層不同的應用具有某些相同的特征,有利于通過工程化、工具化管理程序代碼。控制器也提供了一個好處,就是可以使用控制器來聯接不同的模型和視圖去完成用戶的需求,這樣控制器可以為構造應用程序提供強有力的手段。給定一些可重用的模型和視圖,控制器可以根據用戶的需求選擇模型進行處理,然后選擇視圖將處理結果顯示給用戶。MVC缺點有,沒有明確的定義;不適合小型,中等規模的應用程序;增加系統結構和實現的復雜性,對于簡單的界面,嚴格遵循MVC,使模型、視圖與控制器分離,會增加結構的復雜性,并可能產生過多的更新操作,降低運行效率;視圖與控制器間的過于緊密的連接;視圖對模型數據的低效率訪問;一般高級的界面工具或構造器不支持模式。2可行性研究21技術可行性個人健康管理系統項目是基于ANDROID開源語言的移動應用軟件。以MVC模式,通過JAVA語言和XML配置混合進行開發。ANDROID語言發展至今,已經非常成熟。項目相關數據庫功能使用ANDROID自帶的SQLITE輕量級數據庫,基于SQL語言進行數據庫功能方面的設計與開發。項目的功能實現與交互界面的優化方面,通過ANDROID自帶組件、自定義組件和第三方組件可達到不錯的實現效果。所以,從技術方面來看,使用ANDROID語言進行本應用開發是可行的。22經濟可行性本項目屬于個人開發,無需投入大量資金,所以經濟上可行。23時間可行性本項目應用開發時間上安排充足,所以時間上可行。3需求分析隨著生活水平的提高,健康一詞的關注度越來越高,人們越來越注重鍛煉、養生,加之現代社會快節奏的生活通,所以需要一個便捷、快速、隨時可使用的應用軟件。所以通過開發ANDROID移動應用可以很好的實現上訴性能。對于個人健康管理系統,需要實現的功能有記錄日常鍛煉、休息提醒、健康飲水、推薦健康時蔬、健康評分等功能。應用需要保留相關信息,例如個人信息、鍛煉信息等。同時,人機交互性能需要得到注重,目標是實現一個界面友好、操作簡單、便于使用的移動健康管理APP。4總體設計41功能設計根據項目的基本目標和需求進行分析可得項目所需基本實現的功能為登錄功能、注冊功能、鍛煉管理功能、飲水管理功能、飲食管理功能、休息管理功能、評分功能、個人信息管理功能、退出應用功能。根據設計得出的用例圖如下圖41總體設計用例圖登錄系統功能需要實現的基本內容有進行賬戶登錄,擁有一定規則的驗證功能。注冊系統功能需要實現的基本內容有進行賬戶注冊,擁有一定規則的驗證功能。鍛煉管理功能需要實現的基本內容有記錄每天鍛煉信息、增加刪除修改鍛煉信息。飲水管理功能需要實現的基本內容有記錄飲水狀況、提供相關健康飲水知識。飲食管理功能需要實現的基本內容有提供健康飲食的知識。休息管理功能需要實現的基本內容有健康作息提醒、使用手機休息提醒。評分系統功能需要實現的基本內容有根據一套評分標準進行評分并顯示。USER鍛煉管理飲水管理飲食管理個人信息管理退出系統休息管理評分系統登錄系統注冊系統個人信息管理功能需要實現的基本內容有管理個人信息,包括個人賬號的刪除、修改、更換等功能。退出系統功能需要實現的基本內容有實現應用退出功能。42數據庫設計根據應用相關需求與功能,需要數據庫進行數據的管理。項目使用ANDROID自帶的輕量級數據庫SQLITE進行數據的管理。項目一共需要建表7個,詳細信息見下表表41DB_DRINK字段名屬性類型IDPKTXTTOTALTXTCURRENTTXTINCREMENTTXTFLAGTXT表42DB_TIME字段名屬性類型PICK1HTXTPICK1MTXTPICK2HTXTPICK2MTXTPICK3TXTSW1TXTSW2TXTSW3TXT表43DB_EXERCISE字段名屬性類型_IDPK,AUTOINCREMENTINTEGERNAMETXTCOSTTXTDATETXT表44DB_CHART字段名屬性類型DATETXTISUSETXTISEXERCISETXTISDRINKTXTISCHARTTXTGOALSTXT表45DB_CHART_MONTH字段名屬性類型DATETXTGOALSTXT表46DB_ACCOUNT字段名屬性類型USERNAMEPKTXTPWDTXTNAMETXT表47DB_CURRENT_AC字段名屬性類型USERNAMETXTPWDTXTNAMETXTISSAVEPWDTXTISAUTOINTXT43界面設計項目的界面主題以星空為主要背景,主界面以WIN8風格進行界面的設計,并添加界面切換動畫效果。所有界面盡可能多的使界面友好化,提供友好的界面交互,例如按鈕等組件點擊后的反饋,提示信息的彈出等。44權限需求ANDROID應用為了實現一些功能需要調用系統功能、寫入寫出到系統等,為了安全性需要添加權限,以便擁有ACCESS來完成相關功能。項目添加用戶權限ANDROIDPERMISSIONRECEIVE_BOOT_COMPLETED,該權限允許應用接受系統屏幕喚醒、睡眠的廣播動作,以便實現相關的邏輯功能。45應用版本要求ANDROID系統擁有良好的兼容性,可以向下兼容到指定版本。本項目的最低版本要求為ANDROIDMINSDKVERSION“14“,目標版本ANDROIDTARGETSDKVERSION“18“。46項目編寫環境要求項目編寫使用環境WINDOWS7OS、ECLIPSELUNA441、SDK、JDK18、ADT,下圖為項目編寫時環境圖圖42LAYOUT界面編寫環境圖43代碼編寫界面環境5詳細設計51LOGO界面設計LOGO界面需求為展示LOGO并在一定時間后實現自動跳轉至登錄頁面。52登錄界面設計登錄界面要求實現的功能有登錄功能,擁有基本的登錄驗證功能,并可通過復選框勾選是否保存賬號、密碼和自動登錄功能。當驗證通過即可登錄跳轉至主頁面,并保存當前賬戶基本信息,以便之后的功能使用;驗證功能,驗證輸入是否有效,賬號、密碼是否正確等;注冊功能,若無賬號可通過注冊按鈕,跳轉至注冊頁面進行注冊后登錄;退出功能,實現退出系統應用。系統用例圖如下圖51登錄界面用例圖系統流程圖如下圖52登錄界面流程圖用戶登錄注冊退出驗證功能登錄驗證是否通過合法性驗證數據庫數據交互登錄到主界面是否退出注冊登錄界面使用數據庫表DB_ACCOUNT,用于記錄賬號信息;DB_CURRENT_AC,用于記錄當前登錄的賬號基本信息。53注冊界面設計注冊界面主要實現功能有注冊功能,進行賬戶的注冊并插入到數據庫表中,注冊時進行一定的基本校驗規則,注冊成功或失敗顯示提示信息;驗證功能,驗證輸入的有效性,并通過數據庫交互驗證賬號是否已存在。系統流程圖如下圖53注冊系統流程圖注冊界面使用數據庫表DB_ACCOUNT,用于插入賬戶信息。54主界面設計主界面主要實現功能有顯示賬號昵稱功能,提取當前賬戶昵稱并顯示;顯示健康狀態功能,通過數據庫表提取相關數據,實現根據評分系統評分規則顯示以不同顏色為象征的健康狀態;向飲水管理功能,實現向飲水管理界面跳轉;飲食管理功能,開始結束注冊合法性驗證是否通過驗證數據庫返回數據交互通過結束實現向飲食管理界面跳轉;休息管理功能,實現向休息管理界面跳轉;鍛煉管理功能,實現向鍛煉管理界面跳轉;個人信息管理功能,實現向個人信息管理界面的跳轉;評分系統功能,實現向評分系統界面的跳轉;退出功能,實現退出系統功能。用例圖如下圖54主界面用例圖系統流程圖如下圖55主界面系統流程圖用戶顯示賬戶昵稱個人信息管理飲水管理飲食管理休息管理評分系統顯示健康狀態登錄開始結算評分數據庫選擇相應功能跳轉至相應界面結束顯示健康狀態退出主界面使用數據庫表DB_CHART,根據一定評分規則進行評分,提取相關信息并根據規則進行分數轉換,更新數據,通過平均分數以不同顏色象征顯示健康狀況;DB_CHART_MONTH,根據DB_CHART表數據內容,記錄上一個月的平均分數并插入。55飲水管理界面設計飲水管理界面要實現的功能有查看飲水進度功能,顯示喝水量總量、現量、進度等信息;飲水功能,通過飲水按鈕同步飲水狀態,增加喝水現量;設置飲水信息功能,設置飲水的總量和每次飲水量;提供飲水小常識功能,例如喝水的壞習慣、喝水的最佳時間、喝水的功效、推薦喝水量等內容,通過點擊按鈕彈出對應的信息。詳細用例圖如下圖56引水管理界面用例圖用戶進行飲水查看飲水進度飲水壞習慣知識飲水最佳時間知識飲水功效知識推薦飲水量知識設置飲水信息系統流程圖如下圖57飲水管理系統流程圖飲水管理使用數據庫表DB_DRINK,記錄數據有標識ID、喝水目標量、現量、增量、是否完成目標,用于其它功能使用;DB_CHART,用于記錄是否完成喝水目標,以便進行評分。56鍛煉管理界面設計鍛煉管理界面需要實現的功能有查詢當前日志功能,進入界面初始化顯示當前日期的鍛煉日志;添加鍛煉日志功能,添加新的鍛煉日志到當前日期,內容要求有鍛煉項目、鍛煉的持續時間等,添加成功后反饋提示信息;刪除日志項目功能,通過長按鍛煉日志ITEM進行刪除操作,并反饋提示信息;按日期查詢功能,通過制定日期進行查詢,與數據庫表進行數據交互,得到日志數據,并顯示。圖58鍛煉管理界面用例圖用戶添加鍛煉日志查詢當前鍛煉日志按日期查詢日志刪除日志開始顯示飲水進度數據庫數據交互飲水退出結束打開相關飲水小知識系統流程圖如下圖59鍛煉管理系統流程圖鍛煉管理界面使用數據庫表DB_EXERICSE,進行日志記錄,數據表示自增標識_ID、鍛煉項目名稱、鍛煉時長、鍛煉日期,并通過該表實現查詢、刪除等功能;DB_CHART,記錄是否進行過鍛煉,以便之后進行評分使用。57休息管理界面設計休息管理界面需要實現的功能有開啟或關閉起床提醒功能,通過SWITCH打開或關閉該功能;設置起床提醒時間,需要打開起床提醒功能開關才可使用,可設置時間,系統會在設置的時間進行鬧鈴提醒;開啟或關閉睡覺提醒功能,通過SWITCH開啟或關閉該功能;設置睡覺提醒時間,需要打開睡覺提醒開關才可使用,可設置提醒時間,系統會在指定時間進行鬧鈴提醒;開啟或關閉休息提醒功能,通過SWITCH開啟或關閉該功能;設置休息提醒時間,需要開啟休息提醒開關方可使用,可設置時間,系統會在解鎖移動設備屏幕后經過指定時間后進行鬧鈴提醒休息以起到護眼的效果。圖510休息提醒界面用例圖用戶開啟/關閉起床提醒功能開啟/關閉休息提醒功能設置起床提醒時間設置休息提醒時間設置睡覺提醒時間開啟開啟開啟開啟/關閉睡覺提醒功能開始顯示本日鍛煉日志選擇日期查詢并顯示添加日志退出結束刪除日志數據庫系統流程圖如下圖511休息管理系統流程圖休息管理界面使用數據庫表DB_TIME,需要插入刪除數據功能,數據內容有起床提醒小時、分鐘時間,睡覺提醒小時、分鐘時間,休息提醒時間,以及三個開關的開關狀態,通過查詢數據提取相應信息用于相應功能使用。58飲食管理界面設計飲食管理界面需要實現的功能有春季/夏季/秋季/冬季推薦時蔬,通過點擊按鈕顯示推薦的春季、夏季、秋季、冬季健康時蔬,內容要求顯示時蔬圖片、名稱和相應的功效簡紹。系統用例圖如下圖512飲食管理界面用例圖用戶春季時蔬推薦夏季時蔬推薦秋季時蔬推薦冬季時蔬推薦開始開/關起床提醒開/關睡覺提醒開/關休息提醒開關是否開啟設置起床時間開關是否開啟設置睡覺時間開關是否開啟設置休息時間結束退出確認取消數據庫加載數據系統流程圖如下圖513飲食管理系統流程圖59評分系統界面設計評分系統界面需要實現的功能有本月平均健康分數,通過主頁面計算得到本月平均健康分數并以圖表形式顯示;本月日健康分數,通過主頁面結算本月之前未結算過的分數,并通過柱狀圖形式顯示出本月每日的分數;月平均健康分數,通過主頁面結算上個月的平均分數并插入表中,在本系統中通過數據庫取得數據并以柱狀圖顯示所有有值月份的平均健康分數。圖513評分系統用例圖開始選擇相應季節時蔬顯示內容退出結束數據文件讀取用戶本月平均健康分數本月日健康分數月平均健康分數分數計算計算計算計算系統流程圖如下圖514評分系統流程圖評分系統使用數據庫表DB_CHART,獲取本月所有日健康分數和日期并顯示;C_CHART_MONTH,獲取所有有值月份的月平均健康分數、日期并顯示。510個人信息管理界面設計個人信息管理界面需要實現的功能有更改賬戶功能,點擊按鈕后返回登錄界面重新進行賬戶登錄;修改個人賬戶信息功能,跳轉至修改界面,可修改賬戶的密碼、昵稱等信息,擁有基本的驗證規則,修改成功后返回并顯示成功提示信息,失敗反饋失敗提示信息,也可以取消修改直接返回至個人信息管理界面;清除個人數據,清空個人賬戶數據,僅保留賬戶信息,其余表數據全部初始化。圖515個人信息管理界面用例圖用戶更改賬戶修改個人賬戶信息清除個人數據登錄修改信息返回開始顯示本月平均分顯示本月日分數顯示月平均分數數據庫退出結束系統流程圖如下圖516個人信息管理流程圖個人信息管理界面使用數據庫表所有表數據,關于DB_ACCOUNT、DB_CURRENT_AC兩個表,當進行個人賬戶信息修改時,需要修改兩個表的數據。關于其余表數據,當進行清除個人數據時會進行數據初始化,刪除表中所有數據。開始修改賬戶信息清除個人數據更換賬戶數據合法性驗證驗證是否通過確認修改退出結束返回數據庫數據交互否是6項目結果61項目目錄結構圖圖61項目目錄結構圖上圖為本項目目錄結構圖,SRC下放置JAVA類文件和一些TXT資源文件;GEN文件夾為系統自動生成并維護;RES文件夾下放置一些資源文件,例如DRAWABLE文件夾下放置項目所使用到的圖片資源,ANIM下放置界面切換動畫的配置文件資源,LAYOUT文件夾下放置界面配置資源文件,RAW文件夾放置一些音頻文件資源;ANDROIDMAINFESTXML文件是項目的配置文件。項目一共構建自定義類30個,分別用于界面類、數據庫幫助類、服務類、廣播接收器、工具類、自定義組件類等。詳細見下圖圖62項目自定義類項目一共構建定義XML界面視圖21個,用于各系統功能界面的定義、組件內容界面的定義等。詳細內容見下圖圖63項目LAYOUT配置文件62項目主要界面展示項目詳細功能內容請見詳細設計內容。圖64應用圖標圖65項目LOGO界面圖66登錄界面圖67注冊界面圖68主界面圖69飲水管理界面圖610鍛煉管理界面圖611飲食管理界面圖612休息管理界面圖613個人信息管理界面圖614評分系統界面圖615修改賬戶信息界面63項目部分代碼項目主界面ONCREATE代碼PROTECTEDVOIDONCREATEBUNDLESAVEDINSTANCESTATESUPERONCREATESAVEDINSTANCESTATESETCONTENTVIEWRLAYOUTACTIVITY_MAINCHART_DBNEWCHART_DAOTHISCHART_MONTH_DAONEWCHART_MONTH_DAOTHISDB_ACCOUNTNEWUSERACCOUNTDAOTHISCHARTINITCHART_BTNBUTTONFINDVIEWBYIDRIDCHARTNAME_TITLETEXTVIEWFINDVIEWBYIDRIDNAME_TITLECURSORNAMEBARDB_ACCOUNTDB_C_QUERYNAMEBARMOVETONEXTNAME_TITLESETTEXTNAMEBARGETSTRING2IFCHART_GOALS70CHART_BTNSETBACKGROUNDRESOURCERDRAWABLEGREEN_BTNELSEIFCHART_GOALS50CHART_BTNSETBACKGROUNDRESOURCERDRAWABLERED_BTN_SELECTELSECHART_BTNSETBACKGROUNDRESOURCERDRAWABLEBLUE_BTN項目主界面計分邏輯部分代碼CHART_GOALS0CURSORDATACHART_DBDBQUERYCALENDARC_DATECALENDARGETINSTANCESTRINGDATEC_DATEGETCALENDARYEAR“C_DATEGETCALENDARMONTH1“C_DATEGETCALENDARDAY_OF_MONTHIFDATAMOVETONEXTIFDATESPLIT“1EQUALSDATAGETSTRING0SPLIT“1IFCHART_DBDBQUERYDATEMOVETONEXTCHART_DBDBINSERTNEWSTRINGDATE,“Y“,“N“,“N“,“N“,“70“FORINTINDEX0INDEXDATAGETCOUNTINDEXIF“Y“EQUALSDATAGETSTRING4CHART_GOALSINTEGERPARSEINTDATAGETSTRING5ELSEINTTEMP70IF“Y“EQUALSDATAGETSTRING2ELSEIF“Y“EQUALSDATAGETSTRING2TEMP90IF“Y“EQUALSDATAGETSTRING3TEMP80CHART_GOALSTEMPDATAMOVETONEXT64項目其它界面展示項目飲水管理系統、休息管理系統等相關功能系統的其它界面及一些提示信息界面的樣式詳細見下圖圖616飲水知識樣式界面圖617推薦時蔬樣式界面圖618退出提示信息圖619鬧鈴提醒界面圖620飲水設置功能界面圖621飲水管理系統正在飲水中界面圖622添加鍛煉項目提示信息界面圖623刪除個人信息提示信息界面結論基于ANDROID的個人健康管理系統共實現主要功能有注冊登錄功能、飲水管理功能、鍛煉管理功能、飲食管理功能、休息管理功能、評分系統功能、個人信息管理功能。開發過程中涉及ANDROID、JAVA、SQL等知識,使用到PHOTOSHOP、ECLIPSE等工具,于WINDOWSOS、SDK、ADK、JDK18等環境下編寫。通過對基于ANDROID的個人健康管理系統的設計與開發,使個人從中學到很多東西,不僅將所學知識融會貫通,還掌握了許多新知識,對整個項目開發流程也有了一定的認識與了解。首先就ANDROID知識而言,通過對項目的設計、思考、編寫代碼等過程,加深了解了之前所學知識。同時,學到了許多新知識。通過應用的開發,對LISTVIEW、BUTTON、IMAGEBUTTON、SEEKBARD、TEXTVIEW等組件的使用有了深入了解,對界面切換動畫的相關知識也有了一定的了解,在本次應用中使用了大量的數據庫操作,也對數據庫的相關知識更加熟悉,對ANDROID四大組件的使用加深了認識。雖然此次項目為個人開發,但是仍然認識了解到了項目開發的整個流程和各個階段的作用。對于本次應用的另一個主題,健康,通過對其的研究與了解,對相關功能的設計與資料的搜集,使加深了對健康的認識與了解,學到了許多健康的知識。通過此次畢業設計,很好的鍛煉與提升了自己的軟件開發能力與經驗,對日后的開發與工作起到了很大的幫助。參考文獻1張利國代聞,龔海平ANDROID移動開發案例詳解M北京人民郵電出版社,20102王維虎,劉忠,李叢JAVA程序設計M華中科技大學出版社,20133程正權,尹春嬌,王光亞JAVA程序設計基礎與實訓M安徽科學技術出版社,20124吳想想基于ANDROID平臺軟件開發方法的研究與應用D北京郵電大學,20115馬駿驍布魯卡曹晨,關于UI不得不說的那些事J移動信息,20136FREEMAN,EHEADFIRSTDESIGNPATTERNMOREILLYMEDIA,INC,20047鄭阿奇,丁有和,周怡君,鄭進ORACLE實用教程M,電子工業出版社,20138聶少萍,黃靜芝飲水健康及其影響性研究現狀J,華南預防醫學,20139JOHNSON,RICHARD,AJAVADATABASECONNECTIVITYUSINGSQLITEATUTORIALJ,ALLIEDACADEMIESINTERONTAIONALCONFERENCE,2014,1810MARKMURPHYBEGINNINGANDROID2MAPRESS,2010致謝作者在設計(論文)期間都是在降愛蓮副教授全面、具體指導下完成進行的。降愛蓮副教授淵博的學識、敏銳的思維、民主而嚴謹的作風使學生受益非淺,并終生難忘。感謝降愛蓮副教授等在畢業設計工作中給予的幫助。感謝我的學友和朋友對我的關心和幫助。外文原文APPLICATIONFUNDAMENTALSANDROIDAPPLICATIONSAREWRITTENINTHEJAVAPROGRAMMINGLANGUAGETHECOMPILEDJAVACODEALONGWITHANYDATAANDRESOURCEFILESREQUIREDBYTHEAPPLICATIONISBUNDLEDBYTHEAAPTTOOLINTOANANDROIDPACKAGE,ANARCHIVEFILEMARKEDBYANAPKSUFFIXTHISFILEISTHEVEHICLEFORDISTRIBUTINGTHEAPPLICATIONANDINSTALLINGITONMOBILEDEVICESITSTHEFILEUSERSDOWNLOADTOTHEIRDEVICESALLTHECODEINASINGLEAPKFILEISCONSIDEREDTOBEONEAPPLICATIONINMANYWAYS,EACHANDROIDAPPLICATIONLIVESINITSOWNWORLD1BYDEFAULT,EVERYAPPLICATIONRUNSINITSOWNLINUXPROCESSANDROIDSTARTSTHEPROCESSWHENANYOFTHEAPPLICATIONSCODENEEDSTOBEEXECUTED,ANDSHUTSDOWNTHEPROCESSWHENITSNOLONGERNEEDEDANDSYSTEMRESOURCESAREREQUIREDBYOTHERAPPLICATIONS2EACHPROCESSHASITSOWNVIRTUALMACHINEVM,SOAPPLICATIONCODERUNSINISOLATIONFROMTHECODEOFALLOTHERAPPLICATIONS3BYDEFAULT,EACHAPPLICATIONISASSIGNEDAUNIQUELINUXUSERIDPERMISSIONSARESETSOTHATTHEAPPLICATIONSFILESAREVISIBLEONLYTOTHATUSERANDONLYTOTHEAPPLICATIONITSELFALTHOUGHTHEREAREWAYSTOEXPORTTHEMTOOTHERAPPLICATIONSASWELLITSPOSSIBLETOARRANGEFORTWOAPPLICATIONSTOSHARETHESAMEUSERID,INWHICHCASETHEYWILLBEABLETOSEEEACHOTHERSFILESTOCONSERVESYSTEMRESOURCES,APPLICATIONSWITHTHESAMEIDCANALSOARRANGETORUNINTHESAMELINUXPROCESS,SHARINGTHESAMEVMAPPLICATIONCOMPONENTSACENTRALFEATUREOFANDROIDISTHATONEAPPLICATIONCANMAKEUSEOFELEMENTSOFOTHERAPPLICATIONSPROVIDEDTHOSEAPPLICATIONSPERMITITFOREXAMPLE,IFYOURAPPLICATIONNEEDSTODISPLAYASCROLLINGLISTOFIMAGESANDANOTHERAPPLICATIONHASDEVELOPEDASUITABLESCROLLERANDMADEITAVAILABLETOOTHERS,YOUCANCALLUPONTHATSCROLLERTODOTHEWORK,RATHERTHANDEVELOPYOUROWNYOURAPPLICATIONDOESNTINCORPORATETHECODEOFTHEOTHERAPPLICATIONORLINKTOITRATHER,ITSIMPLYSTARTSUPTHATPIECEOFTHEOTHERAPPLICATIONWHENTHENEEDARISESFORTHISTOWORK,THESYSTEMMUSTBEABLETOSTARTANAPPLICATIONPROCESSWHENANYPARTOFITISNEEDED,ANDINSTANTIATETHEJAVAOBJECTSFORTHATPARTTHEREFORE,UNLIKEAPPLICATIONSONMOSTOTHERSYSTEMS,ANDROIDAPPLICATIONSDONTHAVEASINGLEENTRYPOINTFOREVERYTHINGINTHEAPPLICATIONNOMAINFUNCTION,FOREXAMPLERATHER,THEYHAVEESSENTIALCOMPONENTSTHATTHESYSTEMCANINSTANTIATEANDRUNASNEEDEDTHEREAREFOURTYPESOFCOMPONENTS1ACTIVITIESANACTIVITYPRESENTSAVISUALUSERINTERFACEFORONEFOCUSEDENDEAVORTHEUSERCANUNDERTAK
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 員工內部活動方案
- 臺灣義診活動方案
- 古跡考察活動方案
- 反家暴社區具體活動方案
- 單位交流活動方案
- 雙帶先鋒活動方案
- 南明區店面裝修活動方案
- 參觀北京活動方案
- 雙旦活動親子樂園活動方案
- 醫院掃盲活動方案
- 2024年湖北省武漢市中考道德與法治·歷史試題(含答案解析)
- 2024年天津市初中學業水平考試語文試卷及參考答案
- 山東省聊城市2023-2024學年高一下學期期末考試英語試題
- 公路水運工程施工企業主要負責人和安全生產管理人員考核大綱和模擬試題庫1
- 預應力混凝土管樁(L21G404)
- 企業法務概論智慧樹知到期末考試答案章節答案2024年溫州大學
- 第1課 多姿與多彩(生活色彩)課件-2023-2024學年高中美術人教版(2019)選擇性必修1《繪畫》
- 海拔高度與氣壓、空氣密度、重力加速度對照表
- 考評員職業道德課件
- 物控培訓教程預防呆滯料與庫存控制的實用方法
- 天氣數據分析與氣象預測
評論
0/150
提交評論