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

正文內(nèi)容

基于安卓系統(tǒng)天氣預(yù)報(bào)應(yīng)用程序開(kāi)發(fā)本科畢業(yè)論文-資料下載頁(yè)

2025-08-19 17:43本頁(yè)面

【導(dǎo)讀】每天幾十萬(wàn)部安卓手機(jī)的激活量等跡象表明,安卓的未來(lái)。的發(fā)展方向和產(chǎn)業(yè)結(jié)構(gòu)必定成為一些相關(guān)的公司戰(zhàn)略發(fā)展的焦點(diǎn)。要的應(yīng)用軟件,再連接網(wǎng)絡(luò),這樣就可以擴(kuò)充手機(jī)功能。的各種資源,獲取各種有用的信息。

  

【正文】 ()。 = 日期: + ( )[0]。 = 天氣: + ( )[1]。 這里的 detail 是 SoapObject 對(duì)象,這個(gè) detail 相當(dāng)于一個(gè)數(shù)組,第一條語(yǔ) 句的意思是取出 detail 中的下標(biāo)為 6 的數(shù)據(jù),并轉(zhuǎn)換為 String類型,將結(jié)果賦給 tmp,(“ ”)[0]是指首先將 tmp 里的字符串以空格為結(jié)束符,分為字符數(shù)組, [0]就是指數(shù)組的下標(biāo),這樣就獲得了日期和天氣的信息了。其他的信息獲取時(shí)方法類型。 還有一點(diǎn)是這個(gè)服務(wù)也要在配置文件中注冊(cè)。 service android:name= //定義了啟動(dòng)這個(gè)服務(wù)的 action action android:name= / 下拉刷新 在下拉刷新中,其實(shí)主要的還是調(diào)用系統(tǒng)函數(shù)。其中,要獲取三個(gè)值,第一個(gè)是當(dāng)下拉到某個(gè)臨界值值后能夠執(zhí)行刷新命令,第二個(gè)值是下拉的最大值,第三個(gè)值是用戶下拉的值。 22 private void refreshLoadingViewsSize() { // 得到 header的內(nèi)容高度,將作為拖動(dòng)刷新的一個(gè)臨界值,若拖動(dòng) // 距離大于這個(gè)高度,則松手后,觸發(fā)此刷新操作 int headerHeight = (null != mHeaderLayout) ? mHeaderLayout .getContentSize() : 0。 mHeaderHeight = headerHeight。 // 這里得到 Header和 Footer的高度 // 因?yàn)?header和 footer是完全看不見(jiàn)的 headerHeight = (null != mHeaderLayout) ? mHeaderLayout .getMeasuredHeight() : 0。} 同時(shí) 還要設(shè)置下拉的監(jiān)聽(tīng)事件,如果符合條件就會(huì)進(jìn)行刷新操作。 case : // 記錄按下時(shí)的 y坐標(biāo) mLastMotionY = ()。 case : // 計(jì)算差值 final float deltaY = () mLastMotionY。 // 得到絕對(duì)值 final float absDiff = (deltaY)。 // 這里有三個(gè)條件: // 1,位移差大于 mTouchSlop,這是為了防止快速拖動(dòng)引發(fā)刷新 // 2, isPullRefreshing(),如果當(dāng)前正在下拉刷新的話,是允許向上滑動(dòng),并把刷新的 HeaderView擠上去 if (absDiff mTouchSlop || isPullRefreshing()) { mLastMotionY = ()。 // 第一個(gè)顯示出來(lái), Header已經(jīng)顯示或拉下 if (isPullRefreshEnabled() amp。amp。 isReadyForPullDown()) { // 0:表示當(dāng)前滑動(dòng)的偏移量的絕對(duì)值大于 0,表示當(dāng)前 HeaderView滑出來(lái)了或完全 // 不可見(jiàn),存在這樣一種 case,當(dāng)正在刷新時(shí)并且 RefreshableView已經(jīng)滑到頂部,向上滑動(dòng),那么我們期望的結(jié)果是 // 依然能向上滑動(dòng),直到 HeaderView完全不可見(jiàn) // 2, deltaY :表示下拉的值大于 mIsHandledTouchEvent = ((getScrollYValue()) 0 || deltaY )。 23 // 如果截?cái)嗍录?,我們則仍然把這個(gè)事件交給刷新 View去處理,典型的情況是讓 ListView/GridView將按下 if (mIsHandledTouchEvent) { (event)。 } 5 項(xiàng)目調(diào)試和效果分析 項(xiàng)目調(diào)試分析 在這個(gè)項(xiàng)目中,我遇到了很多困難,比如新建了一個(gè) Activity,同時(shí)創(chuàng)建了與之相對(duì)應(yīng)的布局文件,但是沒(méi)有在配置文件 中進(jìn)行注冊(cè),導(dǎo)致在程序運(yùn)行到那個(gè) Activity 時(shí)就會(huì)出現(xiàn) crash。在從 WebService 中獲取天氣信息時(shí)要進(jìn)行幾部操作,最終才能成功獲取。還有一個(gè)是我在項(xiàng)目快結(jié)束時(shí)發(fā)現(xiàn)的,當(dāng)用戶進(jìn)入信息主界面時(shí),程序會(huì)獲取用戶當(dāng)前的位置,出現(xiàn)了一個(gè)情況,就是獲取手機(jī)網(wǎng)絡(luò)狀態(tài)時(shí),沒(méi)有對(duì)出現(xiàn)的所有的狀況進(jìn)行分析判斷,導(dǎo)致在程序運(yùn)行后,不能顯示用戶當(dāng)前所在城市的天氣信息。調(diào)試信息如圖 5: 圖 51 調(diào)試分析 之后我在代碼中,就添加了對(duì)狀態(tài)的判斷。這樣針對(duì)有時(shí)是 DISCONNECT 有時(shí)是UNKNOW 的狀態(tài)就會(huì)解決了。調(diào)試信息如圖 6: 在獲取位置時(shí),導(dǎo)致阻塞在getLocation函數(shù)里面 24 圖 52 調(diào) 試分析 另一個(gè)比較重要的問(wèn)題是,在我用 binder 通信機(jī)制時(shí)出現(xiàn)了一個(gè) crash。我在 onCreate()函數(shù)中,進(jìn)行綁定服務(wù) ,然后就直接用了返回的接口實(shí)例,結(jié)果是這個(gè)接口實(shí)例沒(méi)有得到,因?yàn)?bindService 是在 Activity 完全啟動(dòng)之后才由系統(tǒng)調(diào)用它的一個(gè)連接服務(wù)的函數(shù),由這個(gè)連接函數(shù)返回一個(gè)接口實(shí)例。最后,我采用了多線程,在主線程中開(kāi)了一個(gè)線程,并讓這個(gè)子線程在完成綁定前休眠若干個(gè)10ms,最后成功的解決問(wèn)題。調(diào)試信息如圖 7: 圖 53 調(diào)試分析 當(dāng)程序運(yùn)行到紅色方框時(shí),由于出現(xiàn)了空指針,所 以會(huì)出現(xiàn)致命的錯(cuò)誤。然后會(huì)啟動(dòng) Service,之后才能獲取 igetweather。 UNKNOW狀態(tài) DISCONNECTED 狀態(tài) 25 在代碼中添加了讓線程休眠若干時(shí)間后,就能成功解決。 調(diào)試 分析 如圖 8: 圖 54 調(diào)試分析 保證在獲取天氣的線程使用這個(gè)接口的實(shí)例時(shí),就已經(jīng)完成了綁定,并成功獲取接口。 26 效果圖 ( 1)啟動(dòng)時(shí)自動(dòng)獲取所在城市,并查詢天氣(所在城市為江蘇南京),如圖 9 圖 55 天氣信息 27 ( 3)當(dāng)用戶向右滑動(dòng)時(shí)會(huì)進(jìn)入 PreviousPage 的界面,顯示城市介 紹(我選取的城市是安徽淮南),如圖 10。 圖 56 城市介紹 28 ( 4)當(dāng)用戶在城市介紹界面時(shí),如果繼續(xù)向右滑動(dòng),那么會(huì)切換背景,如圖 11。 圖 57 切換背景圖片 29 ( 5) 當(dāng)用戶在信息主界面時(shí),向左滑動(dòng)屏幕會(huì)進(jìn)入 NextPage,顯示未來(lái)兩天的天氣信息(我選取的城市是安徽淮南),如圖 12。 圖 57 未來(lái)天氣 30 ( 6) 當(dāng)用戶在信息主界面點(diǎn)擊菜單按鈕時(shí),會(huì)進(jìn)入查詢界面,如圖 13。 圖 58 查詢界面 31 ( 7)當(dāng)用戶點(diǎn)擊查詢界面中的地位按鈕時(shí),會(huì)顯示用戶當(dāng)前所在城市,如圖 14。 圖 59 定位界面 ( 8)當(dāng)用戶在查詢界面點(diǎn)擊檢測(cè)網(wǎng)絡(luò)的時(shí)候,會(huì)顯示當(dāng)前手機(jī)所連接的網(wǎng)絡(luò)狀態(tài),如圖 15。 圖 510 檢測(cè)網(wǎng)絡(luò) 32 總結(jié) 由于我在公司實(shí)習(xí),所以花在畢業(yè)設(shè)計(jì)上的時(shí)間相對(duì)較少,選擇的也是較簡(jiǎn)單的設(shè)計(jì)。經(jīng)過(guò)近兩個(gè)月的設(shè)想、設(shè)計(jì)、規(guī)劃,我終于完成了這個(gè)項(xiàng)目?;叵肫甬?dāng)時(shí)我選擇這個(gè)項(xiàng)目時(shí),雖然項(xiàng)目不是很大,但是 android 編程對(duì)于我來(lái)說(shuō)幾乎是空白,要完成這個(gè)項(xiàng)目還需要自身努力地學(xué)習(xí)。經(jīng)過(guò)查閱大量的資料,我按質(zhì)按量完成了設(shè)計(jì)的功能。解決的問(wèn)題可以大概總結(jié)為以下幾點(diǎn): 1 設(shè)計(jì)了程序的用戶界面,當(dāng)我運(yùn)行程序時(shí)這個(gè)程序能給我一種賞心悅目的感覺(jué),可以根據(jù)天氣情況改變背景,也可以滑動(dòng)屏幕來(lái)切換背景圖片,顯得整個(gè)程序美觀大方。 2 完成和改善了城市天氣查詢功能,方便用戶查詢信息。最開(kāi)始時(shí)一直在考慮如何從網(wǎng)絡(luò)中得到我想要的天氣信息,這也是我這個(gè)程序的關(guān)鍵所在。后來(lái)我在查閱資料時(shí),學(xué)習(xí)到了可以通過(guò) WebService 服務(wù)從 WebXml 網(wǎng)站 獲取天氣信息。遵從 Soap 協(xié)議,只要將獲取來(lái)的天氣信息解析就可以了。 3 增加了定位功能,這是利用 TelephonyManager 等相知識(shí),通過(guò) SIM 卡,我可以得到用戶所在地的經(jīng)度和緯度,然后再通過(guò) google map 獲取經(jīng)緯度所對(duì)應(yīng)的城市。 我最后遇到的 一個(gè)問(wèn)題 是關(guān)于定位問(wèn)題 ,通過(guò)基站來(lái)獲取經(jīng)度和緯度,當(dāng)先獲取手機(jī)網(wǎng)絡(luò)狀態(tài)時(shí),出現(xiàn)了一個(gè) UNKOWN 狀態(tài),因?yàn)橹爸皇菍?duì)DISCONNECT 進(jìn)行了判斷,沒(méi)有對(duì)這個(gè) UNKOWN 狀態(tài)進(jìn)行判斷,導(dǎo)致當(dāng)程序運(yùn)行到這里的時(shí)候會(huì)中止,通過(guò)加了一些 log,找到了問(wèn)題的所在 ,成功地解決了問(wèn)題。 除此之外,還有我在上文中提到的沒(méi)有成功獲取調(diào)用 service 的 binder 實(shí)例,導(dǎo)致程序在運(yùn)行時(shí)直接出現(xiàn) crash。在我仔細(xì)分析之后還是成功的解決了。解決的問(wèn)題還有很多,當(dāng)然也還有沒(méi)有完善的問(wèn)題 以下是我自己所列的不足之處: 1 代碼耦合性高 2 界面或背景在切換時(shí)沒(méi)有做一定的修飾動(dòng)畫 3 沒(méi)有盡可能的優(yōu)化 java 代碼 4 在輸入城市時(shí),暫時(shí)沒(méi)有實(shí)現(xiàn)對(duì)亂碼和英文進(jìn)行判斷 5 下拉刷新這一個(gè)功能模塊沒(méi)有做好 6 當(dāng)我在加入了“天氣實(shí)況”之后,顯示除中國(guó)之外的城市時(shí)信有誤息,因?yàn)?webservice 中提 供的信息不完整。 33 參考文獻(xiàn) [1]李興華 .Java 開(kāi)發(fā)實(shí)戰(zhàn)經(jīng)典 .北京 :清華大學(xué)出版社 , 2020 [2]李興華 ,王月清 .Java Web 開(kāi)發(fā)實(shí)戰(zhàn)經(jīng)典 .北京 :清華大學(xué)出版社 ,2020 [3]印旻 ,王行言 .Java 語(yǔ)言與面向?qū)ο蟪绦蛟O(shè)計(jì) .北京 :清華大學(xué)出版社 , 2020.(參考文獻(xiàn)為專著的寫法 ) [4]王世江 ,蓋索林 . Google Android 開(kāi)發(fā)入門指南 .北京 :人民郵電出版社 , 2020.(參考文獻(xiàn)為專著的寫法) [5]李剛 .瘋狂 Android 講義 .北京:電子工業(yè)出版社 , 2020.(參考文 獻(xiàn)為專著的寫法) [6]梅爾( Reto Meier),王超 .Android 2高級(jí)編程 .北京 :清華大學(xué)出版社 , 2020.(參考文獻(xiàn)為專著的寫法) [7]哈希米 ,科曼特內(nèi)尼 ,麥克萊恩 .精通 android :人民郵電出版社 ,2020.(參考文獻(xiàn)為專著的寫法) [8]李學(xué)華 ,王亞飛 .Andriod 移動(dòng)開(kāi)發(fā) 技術(shù)與應(yīng)用 .北京 .北京郵電大學(xué) , 2020.(參考文獻(xiàn)為專著的寫法) [9]加爾根塔 .Learning :電子工業(yè)出版社 ,2020.(參考文獻(xiàn)為專著的寫法) [10]陳會(huì)安 .Java 和 Android 開(kāi)發(fā)實(shí)戰(zhàn)詳解 .北京:人民郵電出版社, 2020.(參考文獻(xiàn)為專著的寫法) 34 謝辭 我要感謝我的指導(dǎo)老師 于 老師,她是一個(gè)非常負(fù)責(zé)任、非常勤勞的老師,主動(dòng)指導(dǎo)我做畢業(yè)設(shè)計(jì)。感謝她的不辭辛勞,從開(kāi)始的搜集材料確定題目,老師就細(xì)心地講解分析,感謝她的不遺余力,當(dāng)我初稿完成后,我 就請(qǐng)她給我審核,到最后論文的定稿的整個(gè)過(guò)程中,老師都及時(shí)給予我建議,指出不足之處,不斷充實(shí)論文的內(nèi)容最終幫助我完成了這篇報(bào)告。
點(diǎn)擊復(fù)制文檔內(nèi)容
高考資料相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1