freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

android手機(jī)計(jì)步軟件的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)論文(完整版)

2025-07-25 13:57上一頁面

下一頁面
  

【正文】 擊開始按鈕后與后臺(tái)服務(wù)進(jìn)行綁定,創(chuàng)建后臺(tái)服務(wù)的service對(duì)象,從而能夠獲取service中的方法。 系統(tǒng)的用例圖如31所示: 圖 31計(jì)步軟件用例圖 數(shù)據(jù)的需求分析本文的計(jì)步軟件的數(shù)據(jù)結(jié)構(gòu)和功能如下:(1) 每次運(yùn)動(dòng)信息。3 需求分析 功能需求 本文主要功能模塊包括以下幾個(gè):計(jì)步功能模塊、查詢運(yùn)動(dòng)信息功能模塊、設(shè)置參數(shù)模塊、退出系統(tǒng)模塊。必須事先在定位管理器中注冊(cè)監(jiān)聽器對(duì)象。 通過以上方法,手機(jī)GPS模塊定時(shí)向衛(wèi)星發(fā)送請(qǐng)求,獲取用戶的實(shí)時(shí)經(jīng)緯度信息,提供給邏輯運(yùn)算模塊進(jìn)行處理。它能夠支持Windows/Linux/Unix等等主流的操作系統(tǒng),同時(shí)能夠跟很多程序語言相結(jié)合,比如 Tcl、C、PHP、Java等,還有ODBC接口,同樣比起Mysql、PostgreSQL這兩款開源世界著名的數(shù)據(jù)庫管理系統(tǒng)來講,它的處理速度比他們都快。Android工程是在Eclipse工具上編寫的,進(jìn)行android工程的編寫,首先需要在Eclipse上安裝ADT插件,然后指定SDK所在的路徑,便可以創(chuàng)建android虛擬機(jī)了。我們也可以自己來定ContentProvider共享我們的數(shù)據(jù),方便用戶的訪問。 (2)Service 簡介顧名思義Service就是運(yùn)行在后臺(tái)的一種服務(wù)程序,一般很少和用戶交互,因此沒有可視化界面定義一個(gè)Service類比較簡單,只要繼承Service類,實(shí)現(xiàn)其生命周期中的方法就可以了。每一個(gè)android應(yīng)用程序是Dalvik虛擬機(jī)中的實(shí)例,運(yùn)行在它們自己的進(jìn)程中。同時(shí)支持靜態(tài)圖像文件,支持MPEG4,MP3,AAC,JPG,PNG,,ARM等多種編碼格式。通過Android的應(yīng)用程序框架,開發(fā)人員可重用各種組件和服務(wù)[3]。到了2010年1月,Google開始發(fā)表自家品牌手機(jī)電話的Nexus One,目前最新SDK版本為Android 。對(duì)自己工作的總結(jié),指出工作的不足,并且對(duì)系統(tǒng)的一些后續(xù)的發(fā)展提供一些建議。介紹Android平臺(tái)開發(fā)所設(shè)計(jì)到的開發(fā)環(huán)境和實(shí)現(xiàn)本軟件開發(fā)的GPS技術(shù)。通過獲取GPS數(shù)據(jù)來對(duì)用戶的運(yùn)動(dòng)情況進(jìn)行統(tǒng)計(jì)?! ”疚尼槍?duì)現(xiàn)在市面上現(xiàn)有的計(jì)步器產(chǎn)品進(jìn)行了廣泛的調(diào)查。目前全球的智能手機(jī)操作系統(tǒng)主要以Google公司開發(fā)的Android系統(tǒng)、蘋果公司開發(fā)的iPhone系統(tǒng)、諾基亞公司開發(fā)的Symbian系統(tǒng)、微軟公司開發(fā)的WindowsMobile系統(tǒng)和Linux系統(tǒng)為代表。Android平臺(tái)是一個(gè)面向大眾的系統(tǒng),分布在低端,中端和高端市場(chǎng)中,在各個(gè)階段的是市場(chǎng)中都有很受歡迎的機(jī)型,并且Android是開源的,開發(fā)者隨時(shí)都可以查看系統(tǒng)源代碼,并且使用時(shí)下最流行的java作為其主要的開發(fā)語言。目前為止,此類產(chǎn)品可分為兩大類:一類是電子計(jì)步器,是獨(dú)立的硬件產(chǎn)品,與火柴盒體積相仿,內(nèi)部設(shè)有加速度傳感器,外部設(shè)有顯示屏和操作按鍵,價(jià)格在幾百元;另一類是運(yùn)行于智能手機(jī)平臺(tái)上的運(yùn)動(dòng)類應(yīng)用軟件,使用手機(jī)自帶的硬件模塊,包括GPS和加速度傳感器,使用手機(jī)屏幕作為統(tǒng)計(jì)結(jié)果輸出,手機(jī)按鍵或觸屏作為操作輸入。本文的工作主要集中在以下幾個(gè)方面: 學(xué)習(xí)Android和GPS相關(guān)知識(shí)和技術(shù)。第3章 需求分析。2 相關(guān)技術(shù)綜述 Android Android簡介Android一詞的本義指“機(jī)器人”,同時(shí)也是Google于2007年11月5日宣布的基于Linux平臺(tái)的開源手機(jī)操作系統(tǒng)的名稱,該平臺(tái)由操作系統(tǒng)、中間件、用戶界面和應(yīng)用軟件組成,號(hào)稱是首個(gè)為移動(dòng)終端打造的真正開放和完整的移動(dòng)軟件。對(duì)于一個(gè)Android應(yīng)用程序來說,是由Activity、IntentReceiver、Service、Content Provider四部分組成。應(yīng)用程序的框架組成部分:l UI組件:包括列表,文本框,按鈕等UI組件,是用戶可視的部分。l SQLite:一個(gè)通用型很強(qiáng)的輕型關(guān)系型數(shù)據(jù)庫引擎。 (4)Linux內(nèi)核:,如安全性,進(jìn)程管理,內(nèi)存管理,網(wǎng)絡(luò)協(xié)議棧和驅(qū)動(dòng)模型。通過service,我們可以調(diào)用startService()啟動(dòng)一個(gè)Service或者bindService()方法來綁定一個(gè)存在的Service (3)Broadcast Receiver 簡介Broadcast Receiver 顧名思義廣播接收器,它和事件處理機(jī)制類似,只不過事件處理機(jī)制是程序組件級(jí)別的(例如,某個(gè)按鈕的單擊事件),而廣播事件處理機(jī)制是系統(tǒng)級(jí)別的。 開發(fā)環(huán)境介紹 Eclipse簡介 Eclipse是一個(gè)開放源代碼的、基于Java的可擴(kuò)展開發(fā)平臺(tái)[6]。虛擬機(jī)模擬的是android智能手機(jī)的界面,通過操作虛擬機(jī)可以體驗(yàn)到android智能手機(jī)的部分應(yīng)用。SQLite第一個(gè)Alpha版本誕生于2000年5月, 。 Android中GPS類簡介 。Criteria:該類使得應(yīng)用能夠通過在LocationProvider[9]中設(shè)置的屬性來選擇合適的定位提供者。 計(jì)步功能:通過Android手機(jī)GPS功能來獲取用戶實(shí)時(shí)的經(jīng)緯度信息,借助地球球面兩點(diǎn)間的距離公式計(jì)算用戶的運(yùn)動(dòng)距離,根據(jù)用戶設(shè)置的身高可以估算出步長,從而測(cè)得用戶所走的步數(shù);計(jì)時(shí)功能根據(jù)用戶運(yùn)動(dòng)的時(shí)間可以計(jì)算出用戶步行的速度,然后可以根據(jù)用戶設(shè)置的體重,估算用戶步行運(yùn)動(dòng)所消耗的熱量。存放用戶一天當(dāng)中所有運(yùn)動(dòng)次數(shù)的歷史記錄信息,ER圖見圖32所示。后臺(tái)服務(wù)調(diào)用創(chuàng)建(onCreate)方法后顯示notification 后臺(tái)提示。 設(shè)置參數(shù)功能 為了實(shí)現(xiàn)計(jì)步功能,需要設(shè)置一些輔助信息,如用戶的身高、體重,用戶運(yùn)動(dòng)的目標(biāo)步數(shù),以便能更準(zhǔn)確的統(tǒng)計(jì)步數(shù)和消耗的卡路里量。每次的運(yùn)動(dòng)信息的獲取是當(dāng)用戶點(diǎn)擊了停止按鈕之后,將此次的運(yùn)動(dòng)信息保存到該表中。 軟件結(jié)構(gòu)設(shè)計(jì)本軟件程序結(jié)構(gòu)如圖53所示: 圖 53 程序結(jié)構(gòu)圖 為了使源代碼文件的結(jié)構(gòu)更加清晰,Pedometer工程設(shè)置了多個(gè)命名空間,分別用來保存用戶界面、數(shù)據(jù)庫、后臺(tái)服務(wù)和工具實(shí)體的源代碼文件,源代碼文件的名稱以及說明如表54所示。 (5500)。 (buildTabSpec(Chart_TAB, , ))。資料顯示,步長與用戶的身高與速度成正比。 查詢運(yùn)動(dòng)信息功能在應(yīng)用主界面中點(diǎn)擊歷史tab則進(jìn)入到查詢運(yùn)動(dòng)信息界面,該界面通過分頁的形式左右側(cè)滑來顯示最近一個(gè)月以內(nèi)的所有運(yùn)動(dòng)信息。i++){ ... (view[i])。bar=new ConfigurationView(this,steps*100/targetSteps,步數(shù)/%, true)。實(shí)現(xiàn)該功能的界面如圖511所示。由于對(duì)Android開發(fā)的不熟悉,我碰到了很多問題,走不了少的彎路,面對(duì)這些問題我也只能硬著頭皮認(rèn)真排查和上網(wǎng)求助,最終解決了問題。private TextView msg。 (5500)。 TabHost localTabHost = 。 private Button btn_pause。 private TextView mPaceValueView。 private float mSpeedValue。 float value5。 new Thread() { Override public void run() { while(mIsRunning) { try { (1000)。 (value4 + value4)。 setContentView()。mDistanceValueView=(TextView)()。 ()。 ()。 break。 break。 startStepService()。 (bundle)。 if (mService != null) { (TAG, [step SERVICE] stopService)。 } public void saveHistoryDataByTimes() { Date nowTime=new Date()。 ((().toString()))。 } catch (SQLException e) { // TODO Autogenerated catch block ()。 String calories=((calories))。 } break。 } break。 (, 1)。 } catch (SQLException e) { // TODO Autogenerated catch block ()。 private String mLocationProvider=。 private SharedPreferences pre。 ()。 mSettings=new PedometerSettings(pre)。 (傳遞到service的時(shí)間, time)。}。 } public float speedChanged(){ (每千米距離, (speed))。 } public float caloriesChanged(){ (消耗卡路里, (calories))。 } public int stepsChanged() { (步數(shù), (step))。 Notification myNotification=new Notification(,null, ())。 ()。 =(LocationManager) (LOCATION_SERVICE)。 private long timeNow。 public float distance=。 (TAG, 保存前一天記錄成功!)。 PedometerDAO dao=new PedometerDAO(this)。 if (mCaloriesValue = 0) { (0)。 if (mDistanceValue = 0) { (0)。 } } private Handler mHandler = new Handler() { Override public void handleMessage(Message msg) { switch () { case STEPS_MSG: mStepValue = (int)。 } public void showData() { PedometerDAO dao=new PedometerDAO(this)。 ((().toString()))。 String formatTime=(nowTime)。 } mIsRunning = false。 } } private void bindStepService() { (TAG, [step SERVICE] Bind)。 break。/ ()。 ()。 stopStepService()。 bindStepService()。 mCaloriesValueView=(TextView)()。 btn_Start=(Button)()。 value5 = ()。 ((STEPS_MSG,value1, 0))。 private static final int PACE_MSG = 2。 private Intent intent。 private TextView mSpeedValueView。 private Button btn_Stop。 (buildTabSpec(Settings_TAB, , , ))。 (animationset)。 Override protected void onCreate(Bundle savedInstanceState) { // TODO Autogenerated method stub (savedInstanceState)。完成此次計(jì)步軟件的課題,我學(xué)會(huì)了靈活運(yùn)用基礎(chǔ)理論知識(shí),結(jié)合實(shí)際情況解決問題。當(dāng)用戶選擇不同的參數(shù)時(shí),將修改后的信息保存到配置文件中,使用SharedPreferences類來使用配置文件中的數(shù)據(jù),以便輔助完成計(jì)步的功能的函數(shù)來調(diào)用。 實(shí)現(xiàn)柱狀圖的代碼請(qǐng)見附錄5。 } (new MyAdapter())。如圖510所示
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1