基于安卓平臺的手機計步器_畢業(yè)設計論文(可編輯)_第1頁
基于安卓平臺的手機計步器_畢業(yè)設計論文(可編輯)_第2頁
基于安卓平臺的手機計步器_畢業(yè)設計論文(可編輯)_第3頁
基于安卓平臺的手機計步器_畢業(yè)設計論文(可編輯)_第4頁
基于安卓平臺的手機計步器_畢業(yè)設計論文(可編輯)_第5頁
已閱讀5頁,還剩42頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

基于安卓平臺的手機計步器_畢業(yè)設計論文北京郵電大學世紀學院畢業(yè)設計論文題目基于安卓平臺的手機計步器的設計72013年6月1日北京郵電大學世紀學院畢業(yè)設計論文任務書姓名學號專業(yè)通信工程系院通信與信息工程設計論文題目基于安卓平臺的手機計步器的設計題目分類工程設計工程技術研究軟件工程如CAI課題等專題研究藝術設計其他題目來源自然科學基金與部省市級以上科研課題企事業(yè)單位委托課題院級課題自擬課題其他指導教師指導教師組組長及成員姓名職稱工作單位備注畢業(yè)設計論文的內(nèi)容和要求步行有益于健康步行熱在歐美等發(fā)達國家十分盛行各種電子計步器也日趨流行在安卓平臺上開發(fā)一款手機計步器軟件采集在步行過程中手機傳感器的輸出信號研究合適的記步算法在安卓平臺下編程實現(xiàn)該算法實現(xiàn)每日步行里程消耗熱量等統(tǒng)計功能開題報告2000字左右畢業(yè)論文不少于15000字要求概念正確調(diào)理清晰文筆流暢論文中的數(shù)學公式必須用OFFICE自帶的公式編輯器輸入原理框圖等用VISIO繪制計步器軟件可在安卓平臺手機上正常運行并實現(xiàn)準確記步1李剛瘋狂的ANDROID講義M電子工業(yè)出版社201172吳亞峰蘇亞光ANDROID20游戲開發(fā)實戰(zhàn)寶典M人民郵電出版社201073李寧ANDROID開發(fā)完全講義M中國水利水電出版社201244嚴蔚敏吳偉民數(shù)據(jù)結構M清華大學出版社200735李剛瘋狂JAVA講義M電子工業(yè)出版社2008106BRUCEECKEL著JAVA編程思想陳昊鵬M機械工業(yè)出版社2007623357蘇亞光吳亞峰索依娜ANDROID平臺下傳感器技術開發(fā)計步器應用J電腦編程技巧與維護2010238熊剛基于ANDROID的智能手機的設計與實現(xiàn)D武漢理工大學2010畢業(yè)設計論文進度計劃從正式啟動時間開始以周為單位填寫第12周進行課題調(diào)研文獻查閱開題報告第3周第4周ANDROID開發(fā)JAVA語言第周第8周中期檢查第9周第11周第13周第1415周第16周教學單位意見審核人簽字年月日備注1由指導教師撰寫可根據(jù)長度加頁一式二份教務處系院各留存一份發(fā)給學生一份任務完成后附在論文內(nèi)2凡審核不通過的任務書請重新申報北京郵電大學世紀學院畢業(yè)設計論文誠信聲明本人聲明所呈交的畢業(yè)設計論文題目基于安卓平臺的手機計步器的設計是本人在指導教師的指導下獨立進行研究工作所取得的成果除了文中特別加以標注和致謝中所羅列的內(nèi)容以外畢業(yè)設計論文中不包含其他人已經(jīng)發(fā)表或撰寫過的研究成果也不包含為獲得北京郵電大學或其他教育機構的學位或證書而使用過的材料申請學位論文與資料若有不實之處本人承擔一切相關責任本人簽名日期畢業(yè)設計論文使用權的說明本人完全了解北京郵電大學世紀學院有關保管使用論文的規(guī)定其中包括學校有權保管并向有關部門送交學位論文的原件與復印件學??梢圆捎糜坝】s印或其它復制手段復制并保存論文學??稍试S論文被查閱或借閱學??梢詫W術交流為目的復制贈送和交換學位論文學校可以公布學位論文的全部或部分內(nèi)容本人簽名日期指導教師簽名日期題目基于安卓平臺的手機計步器的設計摘要ANDROID是一個針對移動設備的操作系統(tǒng)和軟件平臺隨著智能手機的興起漸漸成為了占有市場最大比重的移動平臺操作系統(tǒng)同時也越發(fā)地受到廣大用戶的青睞ANDROID采用LINUX內(nèi)核由GOOGLE和開放手機聯(lián)盟于2007年11月5日發(fā)布容許使用JAVA語言來開發(fā)和管理代碼作為一個年輕并且流行的移動應用平臺目前ANDROID軟件的應用面還是比較廣泛的比如聊天通訊上網(wǎng)等等但涉及傳感器方面的應用軟件還比較少本文在分析討論ANDROID手機軟件開發(fā)原理的同時針對智能手機用戶日常使用的實際情況對用戶手機的日常功能需求進行調(diào)查發(fā)現(xiàn)對于經(jīng)常走路上班或者鍛煉的朋友來說擁有一款精美功能齊全的計步器是非常必要的將精確計量和智能運行技術完美結合只需開啟軟件通過感應器傳來的信息APP能夠變化算法測得你的走路步數(shù)速度以及消耗的卡路里量與行走歷程一款合適的計步器在無形中會量化用戶的健身效果幫助用戶堅持鍛煉以達到更好的健身效果關鍵詞ANDROID智能手機平臺計步器JAVATITLETHEDESIGNOFMOBILEPHONEPEDOMETERBASEDONTHEANDROIDPLATFORMABSTRACTANDROIDISANOPERATINGSYSTEMANDSOFTWAREPLATFORMFORMOBILEDEVICESWITHTHEDEVELOPMENTOFSMARTPHONEITGRADUALLYBECAMETHEBIGGESTPROPORTIONINTHEMARKETOFMOBILEOPERATINGSYSTEMATTHESAMETIMEITBECAMEMOREANDMOREPOPULARAMONGUSERSANDROIDUSESTHELINUXKERNELANNOUNCEDONNOVEMBER52007BYGOOGLEANDTHEOPENHANDSETALLIANCEANDITALLOWTOUSEJAVALANGUAGETODEVELOPANDMANAGETHECODEASAYOUNGANDPOPULARMOBILEAPPLICATIONPLATFORMTHEAPPLICATIONOFANDROIDISRELATIVELYWIDESUCHASCHATCOMMUNICATIONANDINTERNETHOWEVERTHEAPPLICATIONOFSENSORSISLESSTHETHESISOFTHISESSAYISTOANALYZEANDDISCUSSTHEPRINCIPLEOFSOFTWAREDEVELOPMENTOFANDROIDMOBILEPHONEALSOTHEANOTHERPURPOSEINTHISESSAYISTOCONDUCTANINVESTIGATIONINTHEDAILYFUNCTIONALDEMANDFORMOBILEPHONEUSERSBASEDONTHESITUATIONOFDAILYUSESOFSMARTPHONEUSERSTHERESEARCHSHOWSTHATITISVERYIMPORTANTTOHAVEAFULLYFUNCTIONALPEDOMETERFORPEOPLEWHOOFTENWALKTOWORKOREXERCISETHEPEDOMETERMAKESAPERFECTCOMBINATIONOFACCURATEMEASUREMENTANDINTELLIGENTOPERATIONALTECHNOLOGYWHENTHESOFTWAREAREREADYTORUNITCANUSETHEMASSAGEWHICHACQUIREFROMSENSORTOCALCULATETHESTEPFREQUENCYSPEEDTHECONSUMPTIONOFCALORIESANDWALKINGJOURNEYOFYOURWALKANAPPROPRIATEPEDOMETERCANQUANTIFYUSERSFITNESSEFFECTINPOTENTIALLYINTHISWAYITCANMAKEUSERSTOKEEPEXERCISINGINORDERTOACHIEVEBETTERFITNESSEFFECTKEYWORDSANDROIDSMARTPHONEPLATFORMJAVAPEDOMETER目錄1前言111智能手機系統(tǒng)開發(fā)背景112課題的目的與意義213本文主要研究內(nèi)容22相關技術介紹421開發(fā)工具及環(huán)境簡介4211開發(fā)工具4212開發(fā)環(huán)境522ANDROIDSDK常見公共類庫介紹6221ANDROID的傳感器6222ANDROID界面ACTIVITY介紹63系統(tǒng)需求分析831可行性研究8311經(jīng)濟可行性8312技術可行性8313操作可行性932性能需求分析10321實用性原則10322可擴展性與可維護性原則10323安全可靠性原則11324用戶界面美觀原則1133數(shù)據(jù)需求分析134系統(tǒng)設計1441系統(tǒng)總體結構設計1442系統(tǒng)靜態(tài)模型設計155系統(tǒng)實現(xiàn)1651布局界面的設計16511主界面的設計16512設置界面的設計1752各功能的實現(xiàn)18521計步開始及暫停18522記錄數(shù)據(jù)清零18523設置步長18524設置體重19525設置運動狀態(tài)196系統(tǒng)測試2061測試開始停止模塊20611測試準備20612測試過程2062測試總結235結論24致謝25參考文獻26附錄271前言11智能手機系統(tǒng)開發(fā)背景當今社會手機已經(jīng)成為人們工作生活中必不可少的一項通訊和娛樂工具隨著手機的不斷更新手機的各種高層服務和應用層出不窮現(xiàn)在智能手機可謂是爆發(fā)式增長與此同時傳統(tǒng)手機在不斷地消失諾基亞就是在這樣的環(huán)境中受到了重創(chuàng)現(xiàn)在主要有三個使用率和關注度最高的手機平臺分別是ANDROIDIOS和WINDOWSPHONE平臺在這三個平臺中ANDROID的占有率最高自2007年11月GOOGLE公司發(fā)布ANDROID系統(tǒng)以來短短幾年時間ANDROID已經(jīng)占據(jù)了智能手機市場的半壁江山成為目前最為炙手可熱的智能手機操作系統(tǒng)ANDROID走進了越來越多人的生活成為他們獲取信息的主要平臺ANDROID平臺是一個面向大眾的系統(tǒng)分布在低端中端和高端市場中受到了各個層次的歡迎并且ANDROID是開源的開發(fā)者隨時都可以查看系統(tǒng)源代碼并且使用時下最流行的JAVA作為其主要的開發(fā)語言由于這些特點才使得ANDROID成為現(xiàn)在市場占有量最大的軟件平臺在這樣的平臺上面開發(fā)一款獨特的日常生活軟件尤為必要的ANDROID不只是一個操作系統(tǒng)而已它包括了經(jīng)過GOOGLE剪裁和調(diào)優(yōu)的LINUXKERNEL對于掌上設備的硬件提供了優(yōu)秀的支持GOOGLE在LINUX方面的應用能力不容置疑GOOGLE公司所有的幾十萬服務器全部是自己修改過的LINUX操作系統(tǒng)經(jīng)過GOOGLE修改的JAVA虛擬機DALVIK是基于APACHEHARMONY虛擬機版本進行改良而來能夠提供極高的執(zhí)行性能有了JAVA虛擬機大部分JAVA核心類庫都已經(jīng)可以直接運行大量立即可用的類庫和應用軟件例如瀏覽器WEBKIT數(shù)據(jù)庫SQLITE讓你可輕易開出來桌面應用復雜度的手機軟件GOOGLE已經(jīng)開發(fā)好了大量現(xiàn)成的應用軟件同時可以直接使用GOOGLE很多在線服務GOOGLE提供了基于ECLIPSE的完整開發(fā)環(huán)境模擬器文檔幫助示例將極大推動ANDROID快速的推廣和發(fā)展基于ANDROID眾多的優(yōu)點圍繞ANDROID形成了一個移動手機聯(lián)盟主要的手廠商幾乎全部在列而此聯(lián)盟在極大的推動ANDROID平臺的推廣和發(fā)展在未來的幾年將極大的推動整個手機操作系統(tǒng)甚至是互聯(lián)網(wǎng)乃至軟件行業(yè)的發(fā)展ANDROID平臺對于GOOGLE的意義不在于手機本身推動移動互聯(lián)網(wǎng)產(chǎn)業(yè)鏈的迅速成型具有開源特性的ANDROID平臺了之前SYMBIANWINDOWSMOBILE等操作系統(tǒng)收取高額的授權費用的模式使得成本大大降低正是由于它開源代碼使得手機產(chǎn)生更多個性化的應用同時合作方能夠在這里得到利潤或者創(chuàng)造價值手機軟件行業(yè)得到維護協(xié)調(diào)發(fā)展這正式GOOGLE發(fā)布ANDROID平臺的意義也是ANDORID平臺存在的使命所在而作為ANDROID平臺成員之一的中國移動也投資成立了一家通訊公司專門從事GOOGLE手機軟件的應用以及本地化軟件的開發(fā)比如在GOOGLE手機平臺上添加飛信輸入法等一系列符合國內(nèi)用戶使用的功能更多的手機軟件開發(fā)已經(jīng)或者籌備將公司進行轉型從其方向的開發(fā)轉向到ANDROID的開發(fā)ANDROID平臺對手機軟件行業(yè)和移動手機平臺將發(fā)揮極大地推動作用而在未來的幾年或者一段時間內(nèi)ANDROID將越發(fā)的凸顯自己的重要性基于此我們有必要通過進行相關的研究來了解ANDROID平臺來了解開發(fā)ANDROID的那一大批人的先進理念和思想了解手機軟件行業(yè)未來無移動互聯(lián)網(wǎng)的發(fā)展趨勢從而更好的適應時代的需要本論文是對基于安卓平臺的手機計步器的設計和研究目的是為了方便用戶綠色生活保持健康的生活態(tài)度并且為用戶節(jié)約了不必要的開支同時也避免了資源的浪費ANDROID系統(tǒng)的一大亮點之一就是傳感器的使用利用傳感器可以開發(fā)出很多新奇有趣的應用程序例如計步器水平儀甚至在很多游戲中都可以使用傳感器來操作游戲傳感器的種類很多其中包括加速度傳感器姿態(tài)傳感器磁場傳感器溫度傳感器光傳感器等本論文介紹的計步器應用就是使用加速度傳感器本論文主要對計步器以下功能做主要研究程序運行后進入主界面用戶可以看到行程消耗熱量速度以及步速點擊開始進入運行狀態(tài)點擊清零可以使所有數(shù)據(jù)回歸零初始狀態(tài)點擊設置選項可以進入設置界面調(diào)節(jié)靈敏度來設置需要的靈敏度靈敏度越高對身體的動作的感應越靈敏調(diào)節(jié)靈敏度來適應不同的體型了路面等因素通過設置步長來設置用戶自身實際步長為了估算行走的距離和速度輸入步長得出粗略的距離和速度僅供參考設置體重來調(diào)節(jié)用戶的實際體重這是為了計算消耗的卡路里按軟件工程步驟了解相關資料了解本軟件的研究意義確定實現(xiàn)技術與方式設計總目標及其整體框架了解用戶的使用習慣和使用心理進行用戶需求分析和規(guī)范草擬功能模塊畫出模塊圖搜集軟件制作素材編寫代碼實現(xiàn)各個功能模塊根據(jù)ANDROID特有的使用風格進行布局與優(yōu)化完成系統(tǒng)測試并改進2相關技術介紹21開發(fā)工具及環(huán)境簡介ANDROID的上層應用程序是用JAVA語言開發(fā)同時還需要基于DALVIK虛擬機所以GOOGLE公司推薦使用主流的JAVA繼承開發(fā)環(huán)境ECLIPSE只有ECLIPSE還不夠因為是使用JAVA語言進行開發(fā)還應該有由SUN公司提供的JAVASDK其中包括JREJAVARUNTIMEENVIRONMENT此外ANDROID的應用程序開發(fā)和JAVA開發(fā)有較大區(qū)別的所以還需要有GOOGLE提供的ANDROIDSDK同時還需要在ECLIPSE安裝ADT為ANDROID開發(fā)提供開發(fā)工具的升級或者變更是ECLIPSE下開發(fā)工具的升級下載的工具簡言之需要以下軟件才能搭建ANDROID開發(fā)環(huán)境從而進行ANDROID應用程序的開發(fā)1JAVASDK2ECLIPSE3ANDROIDSDK4ADT211開發(fā)工具2111ANDROIDSDK介紹SDK指是軟件開發(fā)包被軟件開發(fā)工程師用于為特定的軟件包軟件框架硬件平臺操作系統(tǒng)等建立應用軟件的開發(fā)工具的集合因此ANDROIDSDK指的既是ANDROID專屬的軟件開發(fā)工具包2112ECLIPSE簡介ECLIPSE是一個著名的跨平臺的自由集成開發(fā)環(huán)境軟件最初主要用來JAVA語言開發(fā)現(xiàn)在人們可以通過安裝插件使其作為CPYTHONPHP等其他語言的開發(fā)工具ECLIPSE的本身只是一個框架平臺但是隨著眾多插件的產(chǎn)生使得ECLIPSE擁有很好的靈活性許多軟件開發(fā)商以ECLIPSE為框架開發(fā)自己的IDEECLIPSE含有插件開發(fā)環(huán)境這個組件主允許希望擴展ECLIPSE的軟件開發(fā)人員構建與ECLIPSE環(huán)境無縫集成的工具由于ECLIPSE中的每樣東西都是插件對于給ECLIPSE提供插件以及給用戶提供一致和統(tǒng)一的集成開發(fā)環(huán)境而言所有工具開發(fā)人員都具有同等的發(fā)揮場所盡管ECLIPSE是使用JAVA語言開發(fā)的但它的用途并不限于JAVA語言例如支持諸如CC和COBOL等編程語言的插件已經(jīng)可用ECLIPSE框架還可用來作為與軟件開發(fā)無關的其他應用程序類型的基礎比如內(nèi)容管理系統(tǒng)本系統(tǒng)即通過ECLIPSE添加ANDROID做插件匹配上ANDROIDSDK進行軟件的開發(fā)2113JDK簡介JDKJAVADEVELOPMENTKIT是一個寫JAVA應用程序的程序開發(fā)環(huán)境它由一個處于操作系統(tǒng)層之上的運行環(huán)境還有開發(fā)者編譯調(diào)試和運行用JAVA語言寫的APPLET和應用程序所需的工具組成JDK是SUNMICROSYSTEMS針對JAVA開發(fā)員的產(chǎn)品SOFTWAREDEVELOPMENTKITJDK中還包括完整的JREJAVARUNTIMEENVIRONMENTJAVA運行環(huán)境也被稱為PRIVATERUNTIME包括了用于產(chǎn)品環(huán)境的各種庫類以及給開發(fā)員使用的補充庫如國際化的庫IDL庫GOOGLE專門為ECLIPSE開發(fā)了一個插件來輔助開發(fā)即ANDROIDDEVELOPMENTTOOLSADT目前ANDROID開發(fā)所用的開發(fā)工具是ECLIPSE在ECLIPSE編譯IDE環(huán)境中安裝ADT為ANDROID開發(fā)提供開發(fā)工具的升級或者變更簡單理解為在ECLIPSE下開發(fā)工具的升級下載工具212開發(fā)環(huán)境本軟件是在WINDOWS7操作系統(tǒng)中利用ECLIPSE開發(fā)工具搭載ANDROIDSDK工具包結合ANDROID手機自帶的SQLITE3數(shù)據(jù)庫進行開發(fā)22ANDROIDSDK常見公共類庫介紹221ANDROID的傳感器加速度傳感器磁場傳感器光線傳感器重力傳感器線性加速傳感器等等加速度傳感器SENSORTYPE_ACCELEROMETER返回手機設備在XYZ三個方向上的加速度我們用到的磁場傳感器SENSORTYPE_MAGNETIC_FIELD返回周圍磁場在手機的XYZ方向上的影響磁場分量距離感應器SENSORTYPE_PROXIMITY重力傳感器SENSORTYPE_GRAVITY線性加速傳感器SENSORTYPE_LINEAR_ACCELERATIONANDROID界面ACTIVITY介紹ANDROID的界面是由每一個成為ACTIVITY的JAVA類組成的這個類庫是制作ANDROID軟件必須使用的WALKINGACTIVITY是應用程序的用戶界面主要功能是按照XML布局文件的內(nèi)容顯示界面并與用戶進行交互只有使用了這個才可以讓用戶看得見本類中有幾個常用的覆寫方法來表示界面的生存周期分別是ONCREATEONSTARTONRESUMEONPAUSEONSTOPONDESTROYONRESTART七個方法ACTIVITY的生命周期圖如圖21所示圖3系統(tǒng)需求分析31可行性研究可行性分析FEASIBILITYANALYSIS也稱為可行性研究是在系統(tǒng)調(diào)查的基礎上針對剛剛開發(fā)打算進一步應用的系統(tǒng)的必要性和可能性的分析和研究可行性研究的目的主要在于用最小的代價在盡可能短的時間內(nèi)確定問題是否能夠解決該階段通過對系統(tǒng)總目標的初步調(diào)研與分析提出可行性方案并進行論證在此主要從經(jīng)濟可行性技術可行性和操作可行性三方面進行分析311經(jīng)濟可行性隨著人民生活水平的提高尤其我國成功承辦2008年奧運會以來人們的健康運動意識逐漸增強而上班族們由于時間緊張可利用的休閑時間較少他們則會利用一些零散的時間進行鍛煉比如上班來回的路上多走路少乘車在辦公區(qū)盡量選擇走樓梯而不是乘坐電梯等等由于運動時間零散不便于量化自己的運動量也就無法估計健身效果在這樣的背景前提下?lián)碛幸豢钣嫴狡骶惋@得尤為必要了目前市場上的計步器少則幾十多則上百而智能手機計步器軟件的成本幾乎為零只需用戶擁有一臺有安卓系統(tǒng)的智能手機即可安裝使用了并且手機計步器軟件攜帶方便可以隨時隨地獲取用戶的運動信息擁有不受地理和時間限制的特點可以充分利用人們的閑暇時間從這個角度看該軟件可行312技術可行性開發(fā)工具ECLIPSECLASSIC372數(shù)據(jù)庫環(huán)境SQLITE3系統(tǒng)環(huán)境MICROSOFTWINDOWSXP或以上版本軟件實現(xiàn)是依靠基于ANDROID系統(tǒng)的開發(fā)技術使用的是JAVA為主的開發(fā)語言進行開發(fā)再加上SOAP技術進行數(shù)據(jù)交互3121功能說明具體有如下一些功能計步開始計步暫停計步清零主屏幕顯示計步總數(shù)走過的公里數(shù)每分鐘走多少步每小時走多少公里和消耗的卡路里量進入設置菜單設置靈敏度設置步長根據(jù)步長計算走過公里數(shù)步速和消耗的卡路里量設置體重和運動類型主要用于計算消耗的卡路里量退出應用3122技術分析表31技術需求分析關鍵技術項要求現(xiàn)有水平對照分析數(shù)據(jù)結構了解了解可以滿足要求數(shù)據(jù)庫熟悉了解雖有欠缺但通過指導培訓應該在短期內(nèi)可以達到要求JAVA熟練熟悉基本可以滿足要求ANDROID精通熟悉短期需進一步達到要求存在一定問題313操作可行性軟件采用最主流的ANDROID軟件應用開發(fā)風格并使用ANDROID的原生組件進行開發(fā)界面友好簡潔易懂組建布局具有誘導性用戶使用極其方便快捷主界面操作流程見圖31設置界面操作流程見圖32圖31圖為主界面操作流程圖圖32圖為設置界面操作流程圖32性能需求分析為了保證軟件能夠長期安全穩(wěn)定可靠高效地在ANDROID設備上運行本系統(tǒng)應該滿足以下性能需求充分利用手機的為本軟件提供信息支持充分考慮用戶獲取信息的心理需求在簡潔實用的基礎上對軟件界面層級進行布局322可擴展性與可維護性原則為適應將來的發(fā)展軟件應該具有良好的可擴展性和可維護性系統(tǒng)設計盡可能模塊化組件化由于ANDROID設備分辨率的各不相同使軟件可靈活配置適應不同的的ANDROID終端設備系統(tǒng)的可擴展性應包括能接納已有的系統(tǒng)和在今后系統(tǒng)軟硬件擴展時能有效地保護已有的資源建設當用戶的需求有所改變時可以對其快速的配置改變以應對用戶的需求有一個較好的應用平臺ANDROID設備能容易地安裝和卸載系統(tǒng)易于擴充升級既能滿足當前業(yè)務的需求將來的需求改變升級也被考慮在內(nèi)隨著三網(wǎng)融合的發(fā)展智能終端產(chǎn)業(yè)鏈的構成相對于傳統(tǒng)功能手機發(fā)生了巨大變化處于上游的操作系統(tǒng)提供商制定安全機制的基本規(guī)則以及相應的應用商店政策終端廠商在這些規(guī)則的基礎上定制個性化的終端軟件建立自有的應用商店應用軟件開發(fā)商開發(fā)者則利用操作系統(tǒng)提供商提供的工具進行各類應用軟件的開發(fā)第三方應用商店或論壇等提供應用軟件的下載渠道基于智能終端產(chǎn)業(yè)鏈在管理和技術方面暴露出來的脆弱性來源于傳統(tǒng)互聯(lián)網(wǎng)和信息系統(tǒng)的各類攻擊逐漸將目標定位于智能終端并借助智能終端操作系統(tǒng)的開放性制造出大量的惡意軟件此外應用商店的審核機制欠缺也導致了惡意軟件的泛濫目前智能終端信息竊取類軟件橫行一款應用軟件的安全可靠性便顯得尤為重要了現(xiàn)在智能終端個人信息的泄露通常不會引起用戶的覺察或者即便覺察也無法判斷其帶來的損失與早期的安全問題不同個人信息泄露所帶來的通常不是直接的高額話費而是潛在的巨大經(jīng)濟損失如銀行賬戶泄密絕密商業(yè)信息泄露等如何保護用戶個人信息防止在用戶不知情的情況下泄露隱私信息是當前亟待解決的問題本軟件不會殘留用戶任何的隱私信息界面經(jīng)過對用戶心理的調(diào)研和統(tǒng)計后并參考時下流行的軟件風格進行設計在此基礎上加入了對用戶具有誘導性的按鍵設計使得用戶在初次使用的時候就會使用而不需要在使用的時候進行特別的學習和指導圖33圖為應用圖標B主界面見圖34C設置和退出按鈕見圖35圖34圖為應用主界面圖35畫紅圈處為設置退出按鈕D設置界面見圖36圖36圖為設置界面33數(shù)據(jù)需求分析表32信息輸入輸出信息輸入信息處理信息輸出用戶點擊開始計步軟件通過后臺感應手機狀態(tài)開始計步通過軟件主界面輸出計步總數(shù)消耗卡路里等信息用戶點擊暫停軟件將通過后臺停止感應手機狀態(tài)從而停止計步顯示計步的相應信息用戶用戶點擊清零軟件通過后臺運行清除所記錄的數(shù)據(jù)所有這界面顯示的信息將歸零等待下次命令用戶點擊設置鍵軟件通過數(shù)據(jù)庫中的設置管理顯示設置主界面輸入步長設置對數(shù)據(jù)庫中步長信息進行改變刷新設置中步長列表輸入靈敏度設置對數(shù)據(jù)庫中靈敏度信息進行改變刷新設置中靈敏度列表輸入體重設置對數(shù)據(jù)庫中的體重進行管理刷新收藏夾電視頻道的列表輸入運動類型設置對數(shù)據(jù)庫中的運動類型進行管理刷新收藏夾單詞的列表4系統(tǒng)設計41系統(tǒng)總體結構設計在設計一款軟件時一般都會把它分成幾個模塊在模塊的基礎上還會再分小模塊這樣就達到了軟件模塊化設計的要求然后再對各個小模塊進行詳細設計和編寫采用模塊化的管理方式可以使軟件結構更清晰也使得軟件的管理更有秩序使別人容易理解和閱讀但是這些模塊也要根據(jù)別的模塊來設計和約束不能隨便設計脫離框架設計完成后需要把每個設計完成的模塊根據(jù)總體框架結合起來根據(jù)本軟件的功能需求將本軟件分為以下幾個功能模塊如圖41所示圖41整體框架圖42系統(tǒng)靜態(tài)模型設計根據(jù)系統(tǒng)需求可以識別系統(tǒng)中存在的對象從需求中可知我們至少創(chuàng)建2個類主界面類和設置類系統(tǒng)和用戶交互時需要直觀的圖形化界面所以我們需要5個設置界面類確定了系統(tǒng)的類后需要確定類之間的關系如圖42所示圖42系統(tǒng)靜態(tài)模型5系統(tǒng)實現(xiàn)本章介紹本系統(tǒng)的各個模塊的設計和實現(xiàn)首先在ECLIPSE中配置好ADT和ANDROIDSDK等開發(fā)環(huán)境然后新建一個ANDROID項目項目名為PEDOMETER然后在ANDROID項目中的ANDROIDMANIFESTXML文件中配置本軟件需要使用的權限本論文用到的是MANIFESTXMLNSANDROID“PACKAGE“EDUBUPTCOMMLIANGWENSHUPEDOMETER“ANDROIDVERSIONCODE“5“ANDROIDVERSIONNAME“140“ANDROIDINSTALLLOCATION“AUTO“計步器的主要功能有計步開始暫停設置顯示運動所消耗的卡路里走過長度步速時速里程本軟件是一個結合手機用戶特別是智能手機用戶常用功能的一個軟件平臺本軟件可以通過界面快速獲取運動的情況獲取信息后可以對這些信息進行個性化處理以方便用戶直觀的感受運動量51布局界面的設計511主界面的設計由于ANDROID平臺手機屏幕大小有限為了不使用戶有凌亂的感覺在主界面本軟件實現(xiàn)了步速步數(shù)卡路里的顯示等功能為了讓界面顯得更為美觀使用更為方便筆者使用在TEXTVIEW的基礎上實現(xiàn)了TAB底部菜單在底部菜單上添加了PAUSERESUMERESET如圖51所示A主界面運動信息的顯示BPAUSERESUME及RESET鍵圖51主界面信息顯示及暫停開始清零鍵PAUSERESUME主要終于用于停止和開啟監(jiān)聽手機運動狀態(tài)也就是用戶可以點擊該按鈕添來控制手機計步器的工作開始或者暫停RESET用于清除ANDROID數(shù)據(jù)池所獲得的數(shù)據(jù)即用戶可以利用此鍵將之前所記錄的運動信息清零以便開始記錄新一次的運動情況在主界面下點擊ANDROID固有的功能鍵即可呼喚出設置和退出應用鍵即SETTINGSQUITE如圖52所示圖52SETTINGS和QUITE鍵SETTINGS用于進入設置主界面對用戶的參數(shù)進行設這QUITE即退出本程序512設置界面的設計用戶選擇設置后會進入一個設置列表界面該界面是利用ANDROID固有的資源模板沒有做多余的修飾簡單明了的表達出設置項目及目的每一行顯示一條設置信息該界面僅僅使用一個LISTVIEW控件實現(xiàn)設置的列表不占用較多的尺寸卻能夠讓用戶直觀的看到所有關于計步器統(tǒng)計運動量所需的信息列表中的每一項均可再打開一個小窗口用于更改用戶信息例如設置步長功能見圖53在點擊STEPLENGTH鍵后會出現(xiàn)填入用戶步長的對話框如圖54圖53設置步長圖54輸入用戶步長設置列表中的每一項指向了一條設置內(nèi)容點擊一條設置項目后能夠進入設置項目的輸入界面用戶可以根據(jù)自身的實際情況來更改設置信息這也很符合人們的使用習慣52各功能的實現(xiàn)521計步開始及暫停首先對PAUSERESUME鍵做一個監(jiān)聽START_PAUSE_BUTTONSETONCLICKLISTENERNEWVIEWONCLICKLISTENER同時還要對此時狀態(tài)做一個判斷START_PAUSE_BUTTONSETTEXTMISRUNNINGRSTRINGPAUSERSTRINGRESUME若初始狀態(tài)為記錄則顯示PAUSE若初始狀態(tài)為非記錄狀態(tài)則顯示RESUME具體代碼的實現(xiàn)見附錄開始暫停按鈕522記錄數(shù)據(jù)清零對清零按鈕做一個VIEW即RESETBUTTONBUTTONFINDVIEWBYIDRIDRESET_BUTTON實現(xiàn)清零的語句很簡單對RESET鍵做一個監(jiān)聽當用戶點擊RESET鍵時即RESETBUTTONSETONCLICKLISTENERNEWVIEWONCLICKLISTENER執(zhí)行一下命令PUBLICVOIDONCLICKVIEWVRESETVALUESTRUE這樣記錄數(shù)據(jù)清零的按鈕就完成了523設置步長對于設置步長首先要獲取用戶所輸入的步長信息RETURNFLOATVALUEOFMSETTINGSGETSTRING“STEP_LENGTH“20“若用戶未對步長信息進行編輯則默認為20在DISTANCENOTIFIER中使用MSTEPLENGTH來計算走過的距離MDISTANCEMDISTANCEFLOATMSTEPLENGTH1000000NOTIFYLISTENER在PACECHANGED中使用MSTEPLENGTH來計算步速MSPEEDKILOMETERSHOURVALUEMSTEPLENGTHCENTIMETERSMINUTE100000F60FCENTIMETERSKILOMETERTELLFASTERSLOWERNOTIFYLISTENER524設置體重對于設置體重首先要獲取用戶所輸入的體重信息RETURNFLOATVALUEOFMSETTINGSGETSTRING“BODY_WEIGHT“50“若用戶未對步長信息進行編輯則默認為50在CALORIESNOTIFIER中使用MBODYWEIGHT來計算用戶因運動所消耗的卡路里MCALORIESMBODYWEIGHTMISRUNNINGMETRIC_RUNNING_FACTORMETRIC_WALKING_FACTORMSTEPLENGTH1000000NOTIFYLISTENER525設置運動狀態(tài)當用戶選擇跑步運動的時候程序會判斷返回值等于RUNNINGRETURNMSETTINGSGETSTRING“EXERCISE_TYPE“RUNNING“EQUALS“RUNNING“判斷跑步還是走路是為了方便計算用戶所消耗的卡路里在因運動所消耗卡路里的計算公式中跑步狀態(tài)和走路狀態(tài)分別對應不同的參數(shù)根據(jù)用戶的選擇而確定卡路里的計算方法設置運動裝態(tài)的詳細代碼見附錄判斷是走路還是跑步6系統(tǒng)測試61測試開始停止模塊測試能否根據(jù)用戶控制得到開始計步和停止計步的結果測試準備模塊名計步器負責人梁文淑意圖測試計步器各模塊功能612測試過程點擊應用圖標如圖61所示運動使主界面開始記錄數(shù)據(jù)如圖62所示我要過論文我要過論文我要過論文我要過論文我要過論文我要過論文我要過論文圖61圖為計步器主界面圖62圖為計步器主界面在主界面點擊PAUSE如圖63所示繼續(xù)運動觀察主界面數(shù)據(jù)是否有變化如圖64所示我要過論文我要過論文我要過論文我要過論文我要過論文我要過論文我要過論文我要過論文我要論文我要過論文我要過論文我要過論文我要過論文我要過論文我要文圖63圖為停止計步界面圖64圖為停止計步后仍在運動界面進入SETTINGS設置點擊設置SENSITIVITY靈敏度如圖66所示過論文我要過論文我要過論圖65圖為設置界面圖66圖為設置靈敏度界面點擊設置STEPLENGTH步長如圖67所示點擊設置BODYWEIGHT體重如圖68所示圖67圖為步長設置界面圖68圖為體重設置界面點擊設置EXERCISETYPE運動類型如圖69所示過論文我要過論文我要過論文我要過論文我要過論文我要過論文我要過論文我要過論文我要過論文圖69圖為運動類型設置界面62測試總結本軟件中幾個模塊的功能經(jīng)過測試均測試通過測試結果和最初的設計基本一致所有的功能均能正常運行軟件需要比較特殊的運行環(huán)境首先手機的重力感應功能必須有而且ANDROID系統(tǒng)的版本過低將不能使用至此基于安卓平臺的手機計步器的設計基本完成5結論經(jīng)過了數(shù)月的努力ANDROID平臺手計步器軟件終于完成了本軟件能實現(xiàn)用戶對計步器的基本要求方便用戶開啟關閉計步器對運動情況和運動量可以直觀的從主界面獲取信息設置選項中的智能人機交互平臺也可以明了的對用戶信息進行編輯不需要復雜的操作不需要學習一目了然對于智能手機用戶來說基于安卓平臺的手機計步器提供了一個快捷方便的平臺為用戶提供隨時隨地的服務節(jié)省用戶不必要的資金消耗與時間消耗是本軟件設計的一個宗旨整個框架和細節(jié)的設計都是圍繞這個宗旨進行的雖然整個軟件還不是很成熟還有很多不足和需要改進的地方或者還有很多信息提供不到位例如我們可以加入音樂播放模塊是用戶在運動的同時享受輕松快樂的環(huán)境這些還需要日后慢慢優(yōu)化和改善但是最初的設計都實現(xiàn)了在現(xiàn)在的功能基礎上本軟件可以進行擴展升級本軟件最初設計的時候就是一個可以擴展的框架所以為將來加入新的功能提供了很大的方便本軟件雖然不是很強大但是是我自己親手編寫的開發(fā)一個能在時下最流行的軟件使之順利的在平臺上運行是一件令人興奮的事情把自己的想法一步一步地付諸實踐最后成為一個真實的實物被別人使用和稱贊此時得到的成就感是尤為強烈的致謝四年的讀書生活在這個季節(jié)即將劃上一個句號而于我的人生卻只是一個逗號我將面對又一次征程的開始四年的求學生涯在師長親友的大力支持下走得辛苦卻也收獲滿囊在論文即將付梓之際思緒萬千心情久久不能平靜偉人名人為我所崇拜可是我更急切地要把我的敬意和贊美獻給一位平凡的人我的導師我不是您最出色的學生而您卻是我最尊敬的老師您治學嚴謹學識淵博思想深邃視野雄闊為我營造了一種良好的精神氛圍授人以魚不如授人以漁置身其間耳濡目染使我不僅接受了全新的思想觀念樹立了宏偉的學術目標領會了基本的思考方式從論文題目的選定到論文寫作的指導經(jīng)由您悉心的點撥再經(jīng)思考后的領悟常常讓我有山重水復疑無路柳暗花明又一村再一次感謝我的母校北京郵電大學世紀學院感謝通信與信息工程專業(yè)對我的培養(yǎng)感謝所有幫助過我的老師和同學朋友們謝謝大家在以后的工作學習和生活中我將更加努力用自己的行動回報社會學校老師及同學參考文獻1李剛瘋狂的ANDROID講義M北京電子工業(yè)出版社201172吳亞峰蘇亞光ANDROID20游戲開發(fā)實戰(zhàn)寶典M北京人民郵電出版社201073李寧ANDROID開發(fā)完全講義M北京中國水利水電出版社201244嚴蔚敏吳偉民數(shù)據(jù)結構M北京清華大學出版社200735李剛瘋狂JAVA講義M北京電子工業(yè)出版社2008106BRUCEECKEL著JAVA編程思想陳昊鵬M北京機械工業(yè)出版社2007623357蘇亞光吳亞峰索依娜ANDROID平臺下傳感器技術開發(fā)計步器應用J電腦編程技巧與維護2010238熊剛基于ANDROID的智能手機的設計與實現(xiàn)D武漢理工大學20109SANDEEPKUMARLOCATIONBASEDSERVICESUSINGANDROIDCANDROIDAPPLICATIONFUNDAMENTALS2009IEEEINTERNATIONALCONFERENCEP1510姚昱旻劉衛(wèi)國ANDROID與J2ME平臺間即時通信的研究與實現(xiàn)J計算機系統(tǒng)應用20081211812011公磊周聰基于ANDROID的移動終端應用程序開發(fā)與研究J計算機與現(xiàn)代化20088868912差沙地獄男爵用ANDROID開發(fā)手機應用J程序員20081252713NARAYANBABUANDROIDAPPLICATIONDEVELOPMENTSKILLSJITTIMEWEEKLY201268555814KONRADADENAUERANDROIDSTRUCTURALDESIGNGUIDELINESJJOURNALOFCOMPUTERANDSOFTWAREENGINEERING2012366972附錄ACTIVITYPACKAGEEDUBUPTCOMMLIANGWENSHUPEDOMETERIMPORTANDROIDAPPACTIVITYIMPORTANDROIDAPPBACKUPRESTOREOBSERVERIMPORTANDROIDCONTENTCOMPONENTNAMEIMPORTANDROIDCONTENTCONTEXTIMPORTANDROIDCONTENTINTENTIMPORTANDROIDCONTENTSERVICECONNECTIONIMPORTANDROIDCONTENTSHAREDPREFERENCESIMPORTANDROIDOSBUNDLEIMPORTANDROIDOSHANDLERIMPORTANDROIDOSIBINDERIMPORTANDROIDOSMESSAGEIMPORTANDROIDPREFERENCEPREFERENCEMANAGERIMPORTANDROIDUTILLOGIMPORTANDROIDVIEWMENUIMPORTANDROIDVIEWMENUITEMIMPORTANDROIDVIEWVIEWIMPORTANDROIDWIDGETBUTTONIMPORTANDROIDWIDGETLINEARLAYOUTIMPORTANDROIDWIDGETTEXTVIEWAUTHORLIANGWENSHUPUBLICCLASSWALKINGACTIVITYEXTENDSACTIVITYPRIVATESTATICFINALSTRINGTAG“PEDOMETER“PRIVATESHAREDPREFERENCESMSETTINGSPRIVATEPEDOMETERSETTINGSMPEDOMETERSETTINGSPRIVATEUTILSMUTILSPRIVATETEXTVIEWMSTEPVALUEVIEW步數(shù)PRIVATETEXTVIEWMPACEVALUEVIEWPRIVATETEXTVIEWMDISTANCEVALUEVIEW距離PRIVATETEXTVIEWMSPEEDVALUEVIEW速度PRIVATETEXTVIEWMCALORIESVALUEVIEW卡路里消耗顯示框TEXTVIEWMDESIREDPACEVIEWPRIVATEINTMSTEPVALUEMSTEPVALUEVIEW的值PRIVATEINTMPACEVALUEMPACEVALUEVIEW的值PRIVATEFLOATMDISTANCEVALUEMDISTANCEVALUEVIEW的值PRIVATEFLOATMSPEEDVALUEMSPEEDVALUEVIEW的值PRIVATEINTMCALORIESVALUEMCALORIESVALUEVIEW的值PRIVATEFLOATMDESIREDPACEORSPEEDPRIVATEINTMMAINTAINIS爬山PRIVATEBOOLEANMISMETRICTRUE公制和米制切換標志PRIVATEFLOATMMAINTAININCPRIVATEBOOLEANMQUITTINGFALSEPRIVATEBUTTONRESETBUTTONPRIVATEBUTTONSTART_PAUSE_BUTTONSETWHENUSERSELECTEDQUITFROMMENUCANBEUSEDBYONPAUSEONSTOPONDESTROYTRUEWHENSERVICEISRUNNINGPRIVATEBOOLEANMISRUNNING程序是否運行的標志位CALLEDWHENTHEACTIVITYISFIRSTCREATEDOVERRIDE開始函數(shù)重寫該函數(shù)加入日志OVERRIDEPROTECTEDVOIDONSTARTLOGITAG“ACTIVITYONSTART“SUPERONSTART重寫回復函數(shù)OVERRIDEPROTECTEDVOIDONRESUMELOGITAG“ACTIVITYONRESUME“SUPERONRESUMEMSETTINGSPREFERENCEMANAGERGETDEFAULTSHAREDPREFERENCESTHISMPEDOMETERSETTINGSNEWPEDOMETERSETTINGSMSETTINGSMUTILSSETSPEAKMSETTINGSGETBOOLEAN“SPEAK“FALSEREADFROMPREFERENCESIFTHESERVICEWASRUNNINGONTHELASTONPAUSEMISRUNNINGMPEDOMETERSETTINGSISSERVICERUNNINGSTARTTHESERVICEIFTHISISCONSIDEREDTOBEANAPPLICATIONSTARTLASTONPAUSEWASLONGAGOMPEDOMETERSETTINGSCLEARSERVICERUNNINGMSTEPVALUEVIEWTEXTVIEWFINDVIEWBYIDRIDSTEP_VALUEMPACEVALUEVIEWTEXTVIEWFINDVIEWBYIDRIDPACE_VALUEMDISTANCEVALUEVIEWTEXTVIEWFINDVIEWBYIDRIDDISTANCE_VALUEMSPEEDVALUEVIEWTEXTVIEWFINDVIEWBYIDRIDSPEED_VALUEMCALORIESVALUEVIEWTEXTVIEWFINDVIEWBYIDRIDCALORIES_VALUEMDESIREDPACEVIEWTEXTVIEWFINDVIEWBYIDRIDDESIRED_PACE_VALUE重設按鈕RESETBUTTONBUTTONFINDVIEWBYIDRIDRESET_BUTTONRESETBUTTONSETONCLICKLISTENERNEWVIEWONCLICKLISTENERPUBLICVOIDONCLICKVIEWVRESETVALUESTRUE開始暫停按鈕START_PAUSE_BUTTONBUTTONFINDVIEWBYIDRIDSTART_PAUSE_BUTTONSTART_PAUSE_BUTTONSETTEXTMISRUNNINGRSTRINGPAUSERSTRINGRESUMESTART_PAUSE_BUTTONSETONCLICKLISTENERNEWVIEWONCLICKLISTENERPUBLICVOIDONCLICKVIEWVIFSTART_PAUSE_BUTTONGETTEXTEQUALSGETRESOURCESGETSTRINGRSTRINGPAUSESTART_PAUSE_BUTTONSETTEXTRSTRINGRESUMEUNBINDSTEPSERVICESTOPSTEPSERVICEELSEIFSTART_PAUSE_BUTTONGETTEXTEQUALSGETRESOURCESGETSTRINGRSTRINGRESUMESTART_PAUSE_BUTTONSETTEXTRSTRINGPAUSESTARTSTEPSERVICEBINDSTEPSERVICEMISMETRICMPEDOMETERSETTINGSISMETRICTEXTVIEWFINDVIEWBYIDRIDDISTANCE_UNITSSETTEXTGETSTRINGMISMETRICRSTRINGKILOMETERSRSTRINGMILESTEXTVIEWFINDVIEWBYIDRIDSPEED_UNITSSETTEXTGETSTRINGMISMETRICRSTRINGKILOMETERS_PER_HOURRSTRINGMILES_PER_HOURMMAINTAINMPEDOMETERSETTINGSGETMAINTAINOPTIONIFMMAINTAINPEDOMETERSETTINGSM_PACEMMAINTAININC5FMDESIREDPACEORSPEEDFLOATMPEDOMETERSETTINGSGETDESIREDPACEEL

溫馨提示

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

最新文檔

評論

0/150

提交評論