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

正文內(nèi)容

android手機(jī)計步軟件的設(shè)計與實(shí)現(xiàn)畢業(yè)論文-預(yù)覽頁

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

下一頁面
 

【正文】 ack),當(dāng)前活動的Activity處于棧頂。到目前為止我們可以使用Intent來啟動一個程序組件,我們還可以通過使用sendBroadcast()方法來發(fā)起一個系統(tǒng)級別的事件廣播來傳遞消息。通過這樣定義好的ContentProvider 我們可以方便的進(jìn)行數(shù)據(jù)操作。最初是由IBM公司開發(fā)的替代商業(yè)軟件Visual Age for Java的下一代IDE開發(fā)環(huán)境。Eclipse是一個開放源代碼的軟件開發(fā)項(xiàng)目,專注于為高度集成的工具開發(fā)提供一個全功能、具有商業(yè)品質(zhì)的工業(yè)平臺,主要有Eclipse項(xiàng)目、Eclipse工具項(xiàng)目和Eclipse技術(shù)項(xiàng)目三個項(xiàng)目,具體包括Eclipse Platform、JDT、CDT和PDE四個部分組成。同時虛擬機(jī)是作為開發(fā)的android應(yīng)用運(yùn)行的場所,它提供基本的人機(jī)交互功能。因此,Android SDK 指的既是Android專屬的軟件開發(fā)工具包。 GPS相關(guān)理論技術(shù)知識 GPS定位原理 GPS,中文全稱為全球定位系統(tǒng),由21顆使用中的衛(wèi)星和3顆備用衛(wèi)星組成,在2萬高空以12小時為周期圍繞地球旋轉(zhuǎn)。大多數(shù)民用GPS的精度在15米以內(nèi),個別高端產(chǎn)品可以保持在5米左右。應(yīng)用程序可以定時請求更新設(shè)備當(dāng)前的地理定位信息。定位提供者具備周期性報告設(shè)備地理位置的功能。Android也提供了一組訪問Google MAP的API,借助Google MAP及定位API,我們就能在地圖上顯示用戶當(dāng)前的地理位置。Overlay:一個可顯示于地圖之上的可繪制的對象。當(dāng)距離發(fā)生改變時在前臺界面上刷新用戶步行的步數(shù)、距離、每分鐘的步數(shù)、每千米的距離和消耗的卡路里;該計步功能還實(shí)現(xiàn)了Notification后臺運(yùn)行的功能。通過設(shè)置身高可以大致計算出不同身高的人的步長是多少,以便根據(jù)距離來計算用戶所行走的步數(shù);通過設(shè)置體重可以估算出不同體重的人運(yùn)動所消耗的卡路里量;通過設(shè)置運(yùn)動目標(biāo)可以在用戶查詢最近運(yùn)動信息時提示用戶達(dá)到期望目標(biāo)的百分比,更好的激勵用戶去運(yùn)動。(2) 每天運(yùn)動信息。完成該功能所涉及到的類有:計步界面類(StepActivity)主要負(fù)責(zé)渲染計步功能的步數(shù)、速度、距離、卡路里數(shù)據(jù)顯示的界面,后臺服務(wù)類(PedometerService)主要負(fù)責(zé)計步功能的實(shí)現(xiàn),完成GPS定位的操作和計算需要在前臺界面上更新的數(shù)據(jù),接口類(IBinder)使用了onBind方法返回綁定服務(wù)的對象,IBinder接口的實(shí)現(xiàn)類(StepBinder)主要負(fù)責(zé)提供后臺服務(wù)的service對象,及獲取計步中的步數(shù)、速度、距離、卡路里的值的方法以供綁定的service對象調(diào)用,通信類(Handler)主要負(fù)責(zé)將后臺服務(wù)的數(shù)據(jù)發(fā)送到前臺界面上顯示出來。當(dāng)用戶想關(guān)閉該計步軟件的界面使用手機(jī)中的其它軟件而又不想停止計步軟件運(yùn)行的情況下,在計步功能與后臺服務(wù)綁定時,會在界面的頂部菜單欄提示該軟件的運(yùn)行通知,關(guān)閉計步軟件的界面后,菜單欄的提示任然存在,這時可以通過點(diǎn)擊提示再次進(jìn)入到上次關(guān)閉的界面上,當(dāng)用戶退出系統(tǒng)后,頂部的菜單欄提示就會關(guān)閉。完成該功能所涉及到的類有:柱狀視圖類(Configuration)主要負(fù)責(zé)繪制柱狀圖的操作,可以實(shí)現(xiàn)動態(tài)的繪畫和靜止的顯示柱狀圖形,運(yùn)動信息界面類(ChartActivity)主要負(fù)責(zé)查詢最近一個月的運(yùn)動信息情況并把這些信息通過文本框和柱狀圖的形式顯示在界面上,分頁類(ViewPager)主要負(fù)責(zé)實(shí)現(xiàn)分頁的效果,適配器類(MyAdapter)主要負(fù)責(zé)完成界面的顯示操作,頁面監(jiān)聽類(MyPageListener)主要負(fù)責(zé)當(dāng)頁面發(fā)生改變時執(zhí)行相應(yīng)的操作。實(shí)現(xiàn)該功能所涉及到的類有:PedometerSettings類主要負(fù)責(zé)從配置文件中讀取存儲的數(shù)據(jù)值,設(shè)置參數(shù)界面類(SettingsActivity)主要負(fù)責(zé)渲染設(shè)置參數(shù)的界面,后臺服務(wù)類(PedometerService)在設(shè)置參數(shù)的功能中主要負(fù)責(zé)獲取從配置文件中讀取的參數(shù)配置信息,以用來計算步數(shù)、消耗的卡路里量。該類圖如圖47所示: 圖 47 退出系統(tǒng)類圖完成該功能的時序圖如圖48所示: 圖 48 退出系統(tǒng)時序圖完成退出系統(tǒng)功能的時序圖描述為:當(dāng)用戶點(diǎn)擊計步軟件的圖標(biāo)通過歡迎界面進(jìn)入到主界面進(jìn)行操作后默認(rèn)為計步界面,當(dāng)用戶想退出系統(tǒng)時,點(diǎn)擊系統(tǒng)的菜單選項(xiàng)“退出”,系統(tǒng)會彈出一個警示框,詢問是否要退出本軟件,若選擇確定,則退出系統(tǒng),計步界面會調(diào)用銷毀方法解除service綁定,后臺服務(wù)就會調(diào)用銷毀方法取消Notification后臺運(yùn)行;若選擇取消,則繼續(xù)計步軟件的使用。表42為每天運(yùn)動信息表HistoryByDay,該表記錄每天步行的歷史信息。圖 51 開發(fā)環(huán)境下載圖 下載完解壓后在系統(tǒng)環(huán)境變量中設(shè)置platformtool的路徑即可進(jìn)行開發(fā)了。表 54 pedometer工程的文件用途說明包名稱文件名說明軟件的歡迎界面主界面計步界面設(shè)置參數(shù)界面查詢運(yùn)動信息界面后臺服務(wù)獲取參數(shù)信息持久層負(fù)責(zé)數(shù)據(jù)的存儲訪問每次運(yùn)動信息類每天運(yùn)動信息類繪畫柱形圖的類操作數(shù)據(jù)庫的類本軟件資源文件結(jié)構(gòu)設(shè)計如圖55所示: 圖 55 資源結(jié)構(gòu)圖 Android的資源文件保存在/res的子目錄中。因而本軟件設(shè)置一個進(jìn)入計步器界面之前的一個歡迎界面,如圖57所示。 (alphaAnimation)。該主界面是通過TabHost標(biāo)簽來實(shí)現(xiàn)底部菜單功能,有計步、設(shè)置、歷史三個底部菜單項(xiàng),如圖58所示。...實(shí)現(xiàn)底部菜單功能的代碼請見附錄2。當(dāng)停止計步時會將此次步行的信息保存到SQLite數(shù)據(jù)庫中。所以不同的運(yùn)動狀態(tài)下需要使用不同的計算公式。 updateView(distance)。該界面分為2個部分:柱狀圖來顯示用戶每天運(yùn)動的步數(shù)所達(dá)到期望的運(yùn)動目標(biāo)的百分比,文本框來顯示用戶每天運(yùn)動的具體運(yùn)動信息。 滑動結(jié)束后,界面自動跳轉(zhuǎn)到當(dāng)前選擇的界面中。 ... (yestedayDate)。柱狀圖會根據(jù)數(shù)值的大小來變換顯示的顏色,如綠色、土黃色、紅色。(bar,new LayoutParams(50, ))。設(shè)置用戶身高的作用是為了計算出用戶的步長,以便計步功能能夠使用該數(shù)據(jù)算出步數(shù)。圖 511設(shè)置界面圖,繼承PreferenceActivity后將該界面顯示出來。 6 結(jié)束語經(jīng)過2個多月的努力,我的畢業(yè)設(shè)計工作即將完成。在解決問題的過程中,學(xué)會了自主學(xué)習(xí)的方法,熟悉了很多程序編寫規(guī)范和經(jīng)典編程理念。 盡管本次畢業(yè)設(shè)計的計步功能已經(jīng)基本開發(fā)完成,但這是我第一次開發(fā)基于Android的軟件,相對于成熟的計步軟件,軟件中還存在許多的不足,針對這些問題下一步的工作計劃如下:(1) 完善計步的功能,添加步行時的軌跡顯示界面;(2) 完善查詢運(yùn)動信息的功能,添加查詢一天當(dāng)中每次的運(yùn)動信息的圖表;(3) 優(yōu)化代碼,使代碼更加簡潔。private ImageView image。 image=(ImageView)findViewById()。 (alphaAnimation)。 ()。 (buildTabSpec(Step_TAB, , , ))。 }附錄3:計步功能public class StepActivity extends Activity implements OnClickListener{ private static final String TAG = Pedometer。 private Button btn_GoOn。 private mService。 private TextView mDistanceValueView。 private int mStepValue。 private int mCaloriesValue。 int value2。 private static final int STEPS_MSG = 1。 private static final int CALORIES_MSG = 5。 } catch (InterruptedException e) { } value1 = ()。 value3 = ()。 ((SPEED_MSG,(int) (value4), 0))。 } Override public void onServiceDisconnected(ComponentName name) { mService = null。 chronometer =(Chronometer)findViewById()。mBottomLayout=(LinearLayout)()。 mSpeedValueView=(TextView)()。 (this)。//開始計時 startStepService()。 (暫 停) 。//暫停計時 unbindStepService()。 time=minutes*60+seconds。 case : (()time*1000)。 ()。 case : (())。 saveHistoryDataByTimes()。 bindStepService()。 Intent intent=new Intent(,)。 startService(intent)。 } private void unbindStepService() { (TAG, [step SERVICE] Unbind)。 stopService(new Intent(, ))。 (0)。 SimpleDateFormat matter=new SimpleDateFormat(yyyyMMdd HH:mm:ss(EE))。 (date[0])。 ((().toString()))。 PedometerDAO dao=new PedometerDAO(this)。 } ()。 while(()) { String steps=((steps))。 } } catch (SQLException e) { // TODO Autogenerated catch block ()。 case PACE_MSG: mPaceValue = 。 case DISTANCE_MSG: mDistanceValue = ((int))/1000f。 case SPEED_MSG: mSpeedValue = 。 case CALORIES_MSG: mCaloriesValue = 。 default: (msg)。 String yestedayDate= (EE, MM dd, calendar).toString()。 try { flag = (yestedayDate)。 } } ()。 //聲明NotificationManager private LocationManager locationManager。 private Location mLocation。 private float speed=。 private long timeFromActivity。 Override public IBinder onBind(Intent intent) { (TAG, return the binder)。 showNotification()。 gp2 = gp1。 } Override public void onDestroy() { (TAG, [my SERVICE] onDestroy)。 Bundle bundle=()。 } //顯示Notification private void showNotification() { =(NotificationManager) getSystemService()。 (this, 計步器, 記錄您的腳步!, contentIntent)。 public PedometerService getService() { return 。 return pace。 return s
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1