基于Android平臺(tái)的計(jì)步器的設(shè)計(jì)與實(shí)現(xiàn)軟件工程_第1頁(yè)
基于Android平臺(tái)的計(jì)步器的設(shè)計(jì)與實(shí)現(xiàn)軟件工程_第2頁(yè)
基于Android平臺(tái)的計(jì)步器的設(shè)計(jì)與實(shí)現(xiàn)軟件工程_第3頁(yè)
基于Android平臺(tái)的計(jì)步器的設(shè)計(jì)與實(shí)現(xiàn)軟件工程_第4頁(yè)
基于Android平臺(tái)的計(jì)步器的設(shè)計(jì)與實(shí)現(xiàn)軟件工程_第5頁(yè)
已閱讀5頁(yè),還剩37頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

南陽(yáng)理工學(xué)院 完成日期DesignandImplementationoftheLovingSportsPedometerBasedonAndroidPlatform總計(jì):畢業(yè)設(shè)計(jì)(論文)33頁(yè)表格: 1個(gè)圖片 1AndroidAndroidAndroid平臺(tái)的愛(ài)運(yùn)動(dòng)計(jì)步器的DesignandImplementationoftheLovingSportsPedometerBasedonAndroidPlatform學(xué)專(zhuān)學(xué)學(xué) 張三講師評(píng)閱教師: 完成日期 2016年04月30日 NanyangInstituteof基于Android平臺(tái)的愛(ài)運(yùn)動(dòng)計(jì)步器的[摘要]隨著人們生活水平和生活質(zhì)量的提高,人們?cè)絹?lái)越關(guān)注自己的身體健大的幫助。本文針對(duì)運(yùn)動(dòng)軌跡和計(jì)步,設(shè)計(jì)一款基于Android平臺(tái)的運(yùn)動(dòng)軟件。本系統(tǒng)[關(guān)鍵詞]運(yùn)動(dòng)軟件;運(yùn)動(dòng)軌跡;AndroidDesignandImplementationoftheLovingSportsPedometerBasedonAndroidPlatformSoftwareEngineeringMajorAbstract:Withtheimprovementofpeople'slivingstandardsandqualityoflife,peoplepaymoreandmoreattentiontotheirhealth.Runninghasbecomeoneofthemostpopularwaysofexercise,andsportssoftwarecanprovidegreatconvenienceforthepeopletoexercise.ThethesisdesignsasportssoftwarebasedonAndroidplatformforthesportstraceandthestepcounting.Thesystemusesbaiduhawkeye,gravitysensorsanddatabasetechnologyrealizingthetrajectorytracking,stepcounting,viewingathleticrecordsandotherfunctions.Thesystemprovidesafriendlyuserinterface,simpleoperationandcanbestableoperation.Thesportssoftwareissuitableforpeoplehavinglesstimeanditisalsoconvenientforpeopletoexerciseatanytimeandviewingathleticrecords.Keywords:sportssoftware;sportstrace;Android;baidu 緒 軟件開(kāi)發(fā)背 論文研究的目的和意 論文主要研究?jī)?nèi) 論文組織結(jié) 相關(guān)技術(shù)介 Android系統(tǒng)的組 應(yīng)用程序 應(yīng)用程序框架 系統(tǒng)運(yùn)行庫(kù) Linux內(nèi)核 Activity的生命周 Android平臺(tái)的搭 JDK的安 Eclipse的安 AndroidSDK的安 ADT的安 創(chuàng)建 需求分 可行性分 經(jīng)濟(jì)可行性分 技術(shù)可行性分 操作可行分 功能需求分 非功能性需求分 易用 可靠 安全 運(yùn)行環(huán) 面向?qū)ο蠓?設(shè)置信息用例分 運(yùn)動(dòng)記錄用例分 計(jì)步信息用例分 系統(tǒng)用例分 系統(tǒng)設(shè) 概要設(shè) 詳細(xì)設(shè) 系統(tǒng)總體設(shè) 計(jì)步模塊詳細(xì)設(shè) 軌跡追蹤模塊詳細(xì)設(shè) 音樂(lè)播放模塊詳細(xì)設(shè) 鬧鈴模塊詳細(xì)設(shè) 平臺(tái)分享模塊詳細(xì)設(shè) 天氣預(yù)報(bào)模塊詳細(xì)設(shè) 更換主題模塊詳細(xì)設(shè) 運(yùn)動(dòng)記錄模塊詳細(xì)設(shè) 數(shù)據(jù)庫(kù)設(shè) 數(shù)據(jù)庫(kù)分 數(shù)據(jù)庫(kù)概念設(shè)計(jì)及表結(jié) 系統(tǒng)實(shí) 計(jì)步模塊實(shí) 軌跡追蹤模塊實(shí) 音樂(lè)播放模塊實(shí) 鬧鈴模塊實(shí) 天氣預(yù)報(bào)模塊實(shí) 平臺(tái)分享模塊實(shí) 更換主題模塊實(shí) 運(yùn)動(dòng)記錄模塊實(shí) 6測(cè) 計(jì)步模塊測(cè) 軌跡追蹤模塊測(cè) 運(yùn)動(dòng)記錄模塊測(cè) 結(jié)束 參考文 致 AndroidAndroid系統(tǒng),而最流行的則是Android操作系統(tǒng),它是一個(gè)開(kāi)放源碼,并且是以Linux為基礎(chǔ)AndroidJavaAndroidAndroidLinux如智能手機(jī)和平板電腦,在眾多手機(jī)智能平臺(tái)上被廣泛應(yīng)用[1]AndroidAndroidAndroid在長(zhǎng)時(shí)間的發(fā)展過(guò)程中,AndroidAndroidAndroid,Android在詳細(xì)設(shè)計(jì)中會(huì)先介紹系統(tǒng)的總體設(shè)計(jì),然后介紹軟件的各個(gè)功能模塊,分別是計(jì)步模Android系統(tǒng)的底層建立在Linux系統(tǒng)之上,該平臺(tái)由應(yīng)用程序?qū)?、?yīng)用程序框架層、系統(tǒng)運(yùn)行庫(kù)層和Linux內(nèi)核四層組成,它采用層次化架構(gòu)的方式進(jìn)行構(gòu)建,這種架應(yīng)用程序?qū)拥娜繎?yīng)用程序都是由Java語(yǔ)言編寫(xiě)的Android會(huì)同一系列核心應(yīng)用程序包一起發(fā)布,該應(yīng)用程序包包括email客戶端、SMS短信消息程序、日歷、地圖、Android應(yīng)用程序框架層提供了大量的API供開(kāi)發(fā)者使用,幫助開(kāi)發(fā)者開(kāi)發(fā)出更靈C/C++庫(kù)集,但可以通過(guò)它上面的應(yīng)用程序框架來(lái)調(diào)用這些庫(kù)[6]。AndroidAndroidAndroidARTARTAPPAPP[7]2-1 APPLICATIONActivity Window ContentPackage ViewSurface Media OpenGL CoreDalvikLINUXDisplay Camera FlashMemoryKeypad Wifi AudioBinderPowerLinux

2-1Android統(tǒng)架構(gòu)理、網(wǎng)絡(luò)、硬件驅(qū)動(dòng),Linux[8]。Activity有可能從非活動(dòng)狀態(tài)轉(zhuǎn)入活動(dòng)狀態(tài),歸納起來(lái),Activity4[9]ActivityActivityActivityActivityActivityActivityActivity[10]2-2onResume():恢復(fù)Activity時(shí)被回調(diào)。在onStart()方法后一定會(huì)回調(diào)ProcessProcessisActivityisActivityActivityisshut

2-2Activity生命周期JDK下載JDK安裝包并安裝JDK,按照J(rèn)DK的安裝提示一步一步安裝,直到安裝完成,cmdjavac,如果輸出幫助信息即為配置正確,同時(shí)想要查看JDKjava-versionEclipse將下載到本地的eclipseeclipse.exeAndroidSDKAndroidDevelopersAndroidSDKAndroidSDKSDKManager.exeAVDManager.exeSDKManager.exeSDKAndroidInstallpackages,AcceptAllAndroidSDKADT打開(kāi)EclipseIDE,點(diǎn)擊菜單欄中的Help,選中InstallNewSoftware選項(xiàng),之后點(diǎn)擊Add按鈕,在彈出的對(duì)話框中輸入相對(duì)應(yīng)的信息,在地址欄中輸入/android/eclipse并確認(rèn)。稍等片刻,展開(kāi)DeveloperTools將顯示許多文件,選擇DeveloperTools的完成之后,打開(kāi)菜單中的ADT管理器,然后選擇自己開(kāi)發(fā)所需要的平臺(tái),選擇完打開(kāi)安卓虛擬設(shè)備管理器,即AVDManagerNew在軟件設(shè)計(jì)中,需求分析是很重要的一個(gè)環(huán)節(jié),它是在系統(tǒng)調(diào)查的基礎(chǔ)之上,對(duì)應(yīng)AndroidAndroid利用人們的空閑時(shí)間幫助鍛煉。本款軟件開(kāi)發(fā)只需一臺(tái)安裝有Windows系統(tǒng)的電腦,在電腦上安裝開(kāi)發(fā)工具JavaSDk、AndroidSDK、ADT和Eclipse即可,因此硬件條件并不高[12]。本款軟件編寫(xiě)主Java,Java跨平臺(tái)性:Java在主流操作系統(tǒng)中實(shí)現(xiàn)了虛擬機(jī),而每個(gè)系統(tǒng)的虛擬機(jī)編譯出的.class文件都是統(tǒng)一的這個(gè).class文件能在任意一個(gè)安裝了Java虛擬機(jī)的系統(tǒng)平Java安全:從程序本身上來(lái)說(shuō),Java這種語(yǔ)言是安全的;從代碼安全性來(lái)說(shuō),Javajca[14]。Java運(yùn)動(dòng)軌跡追蹤:軌跡追蹤是通過(guò)百度鷹眼技術(shù)技術(shù)來(lái)實(shí)現(xiàn)的,指的是通過(guò)GPS定QQ該軟件的開(kāi)發(fā)采用Android軟件應(yīng)用風(fēng)格并且采用了Android原生組件,UI也經(jīng)本軟件適用于4.0版本以上的Android系統(tǒng),對(duì)于以后的開(kāi)發(fā)還具有很大的空間,身體身體設(shè)置信性昵用目標(biāo)步

3-1戶設(shè)置信息用例43-2步距用

3-2戶運(yùn)動(dòng)記錄用例計(jì)算步計(jì)計(jì)算步計(jì)計(jì)算距計(jì)算消耗的熱用

3-3步用例3-4昵昵身步體距性計(jì)3-4用例愛(ài)運(yùn)4-1件功能模塊4-2開(kāi)開(kāi)NYNY天氣預(yù) NYNNYY追Y分NYNYY鬧結(jié)

4-2統(tǒng)總流程顯示計(jì)步N開(kāi)始計(jì)4-3顯示計(jì)步N開(kāi)始計(jì)開(kāi)開(kāi)參Y結(jié)結(jié)開(kāi)始計(jì)

4-3步模塊流程軌跡追開(kāi)N軌跡追開(kāi)N返回主界開(kāi)返回主界開(kāi)4-4跡模塊流程開(kāi)4-5開(kāi)N歌N歌播Y播放音返播放音返返回主界Y返回主界

4-5樂(lè)播放模塊流程4-6NY

4-6鐘模塊流程開(kāi)分享內(nèi)QQ開(kāi)分享內(nèi)分分YN返回主界4-7臺(tái)分享模塊流程查看天開(kāi)N查看天開(kāi)N返回主界返返回主界返

4-8氣預(yù)報(bào)模塊流程設(shè)置主開(kāi)N設(shè)置主開(kāi)N返回主界更換主返回主界更換主4-9換主題流程開(kāi)運(yùn)動(dòng)記N開(kāi)運(yùn)動(dòng)記NYY步數(shù)查YY步數(shù)查軌跡查結(jié)結(jié)

4-10動(dòng)記錄模塊流N返YN返N返YN返4-11性身性身體步昵用4-11昵用距運(yùn)動(dòng)記距運(yùn)動(dòng)記步4-12步出天溫出天溫天運(yùn)4-13天運(yùn)E-R4-14N1運(yùn)1NN1運(yùn)1N查氣天運(yùn)出天氣狀

4-14據(jù)庫(kù)E-R昵性身體步用熱昵性身體步用熱距歷史軌坐步運(yùn)動(dòng)記4-1queryHistoryTrack,4-24-2sport4-34-3用戶進(jìn)入軟件界面,可以看到一個(gè)計(jì)步器,計(jì)步模塊的設(shè)計(jì)是通過(guò)定義一個(gè)ProgressBarProgressBar步數(shù),然后在中間設(shè)置一個(gè)TextView,用來(lái)顯示用戶的運(yùn)動(dòng)步數(shù);再定義三個(gè)ButtonDialogToastsetflhMaxStep.setTextflhtoday_step_maxfinalIntentflhmintent=newIntent(flhMainActivity.this,flhstartflhStep.setOnClickListener(newView.OnClickListenerpublicvoidonClick(Viewv)if(flhisflhStart){//如果可以開(kāi)始flhstartStep.setflhTextTextflhIsStart=false;//是否開(kāi)始標(biāo)記}elseifisflhflhAchieveToast.makeText(MainActivity.thiselseifflhtoday_step_max0Toast.makeText(MainActivity.thiselseifcanStartsp.getBoolean("issavefalseisStart=sThread=newStepThread();}elseToast.makeText(MainActivity.this}}}AndroidpublicvoidonClick(Viewv){}5-1

5-1步界面ButtonpublicpublicvoidonStartinit();//初始化initListener();//初始化監(jiān)聽(tīng)器setInterval();//設(shè)置采集周期setRequestTypehttp}*privatevoidinit()btnStartTrace=(Button)view.findViewById(R.id.btn_starttrace);btnStopTrace=(Button)view.findViewById(R.id.btn_stoptrace);btnOperator=(Button)view.findViewById(R.id.btn_operator);tvEntityName=(TextView)view.findViewById(R.id.tv_entityName);tvEntityName.setText("entityName:"+BaiduMainActivity.entityName+"btnStartTrace.setOnClickListener(newbtnStartTrace.setOnClickListener(newView.OnClickListener(){publicvoidonClick(Viewv){//TODOAuto-generatedmethodstubToast.makeText(getActivity}btnStopTrace.setOnClickListener(newView.OnClickListener()publicvoidonClick(Viewv)//TODOAuto-generatedmethodstubToast.makeText(getActivity}btnOperator.setOnClickListener(newView.OnClickListener()publicvoidonClick(Viewv)//TODOAuto-generatedmethodgeoFence=newGeofence(getActivity(),if(geoFence.popupwindow!=null&&geoFence.popupwindow.isShowing()){}elsegeoFence.popupwindow.showAsDropDown(v,0,5);}}}5-25-2跡追蹤界面ButtonprivatevoidflhplayNewMusic(intflhflhnp){privatevoidflhplayNewMusic(intflhflhnp){if(flhnp==1){//標(biāo)記}elseif(flhnp==2)}isflhPlaying=true;//正在播放}5-3

5-3地音樂(lè)播放界面AnalogClock控件來(lái)實(shí)現(xiàn)的修改鬧鐘的時(shí)間則是通過(guò)DigitalClock控件以對(duì)話框的形式顯示的;鬧鐘DigitalClock的開(kāi)啟是通過(guò)Switch開(kāi)關(guān)控件來(lái)實(shí)現(xiàn)的。鈴聲為運(yùn)動(dòng)軟privateprivatevoidflhshowDialog()}}.setPositiveButtonnewOnClickListenerpublicvoidonClick(DialogInterfaceflhdialogintflhwhich}5-4

5-4鐘界面天的天氣狀況,最后一塊顯示其他信息,這些都是通過(guò)TextView在界面顯示出來(lái)的,textViewpublicpublicvoidflhqueryFromServer()Stringflhaddress=++++"&output=json&ak=CEfe939d88f782787f9c234c1bb7b584";//天氣信息接口地址StringRequestflhrequest=newStringRequest(flhaddress,newResponse.Listener<String>(){publicvoidonResponse(StringflhresponseGsonflhgson=newGson();//GsonfinalStatusflhstatus=flhgson.fromJson(flhresponse,}}if(!weatherDB.saveStatus(status)){//保存}runOnUiThread(newRunnable(){publicvoidrun(){}}newResponse.ErrorListenerpublicvoidonErrorResponse(VolleyErrorflhvolleyError){runOnUiThread(newRunnable(){publicvoidrun(){"加載數(shù)據(jù)失敗!",}}

5-5氣預(yù)報(bào)界面QQ體代碼如下。flhintentflhintentnewIntent(Intent.ACTION_SEND);//Intentflhintent.putExtra(Intent.EXTRA_SUBJECTflhintent.putExtra(Intent.EXTRA_TEXT,"我今天走了"+型5-6

5-6臺(tái)分享界面更換主題通過(guò)Imageview控件將本地所存儲(chǔ)的圖片以列表的方式顯示控件設(shè)publicvoidonClick(Viewflhv){switch(flhv.getId()){caseR.id.flhimageView1:flhsp.edit().putInt("flhmainbackflhimageIg[0]).commit();//設(shè)置背景圖caseflhsp.edit().putInt("flhmainback",flhimageIg[1]).commit();caseflhsp.edit().putInt("flhmainback",flhimageIg[2]).commit();caseflhsp.edit().putInt("flhmainback",flhimageIg[3]).commit();caseflhsp.edit().putInt("flhmainback",flhimageIg[4]).commit();}}caseflhsp.edit().putInt("flhmainback",flhimageIg[5]).commit();caseflhsp.edit().putInt("mainback",flhimageIg[6]).commit();caseflhsp.edit().putInt("flhmainback",flhimageIg[7]).commit();caseflhsp.edit().putInt("flhmainback",flhimageIg[8]).commit();}Toast.makeText(thisToast.LENGTH_SHORT).show();5-7

5-7換主題界面跡界面有一個(gè)日期utton按鈕,用戶點(diǎn)擊按鈕之后,會(huì)彈出一個(gè)選擇日期的DatePickerDialog*privatevoidflhqueryHistoryTrack()StringflhentityName=(0,1intflhsimpleReturn=ifif(flhstartTime==0)flhstartTime=(int)(System.currentTimeMillis()/1000-12*60*}if(flhendTime==0)flhendTime=(int)(System.currentTimeMillis()/}intflhpageSize=intflhpageIndex=1;flhentityName,flhsimpleReturn,flhstartTime,flhendTime,}5-85-8史軌跡查詢界面**@paramprivatevoidflhupdateView(intflhtab)intflhselect_colorColor.rgb(11316324intflhnormal_colorColor.rgb(255255255);//設(shè)置未被選中字體時(shí)的顏色switch(flhtab

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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)論