版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第一章緒論1.1系統(tǒng)研究背景天氣預報是利用近代科學知識與科技手段來預報未來某一地區(qū)的地球大氣情況。在古代開始,人類就已經懂得開始利用天氣預報來安排日常工作和生活(如農業(yè)種植與戰(zhàn)爭行動等方面)。而今天我們所了解到的天氣預報主要是通過收集大量的氣壓、風向、濕度、溫度等氣象信息數(shù)據(jù)來識別大氣環(huán)繞的過程(氣象學),并以此確定未來的天氣變化異常。但是,由于大氣過程的混亂和當今科學并沒有能透徹地了解到大氣運動的全過程,所以天氣預報難免是會出現(xiàn)一些小誤差的。[[]百度百科:/item/%E5%A4%A9%E6%B0%94%E9%A2%84%E6%8A%A5/84068#reference-[1]-11134158-wrap,2020/3/15。公元前340年左右,古希臘著名科學家亞里士多德撰寫了世界上第一部氣象學專著《氣象學通論》。這本書描述了颶風、焚風和風的成因和分布,光暈、彩虹和閃電等大氣光圖像,云、雨、雹和霾的形成以及氣候變化。亞里士多德系統(tǒng)地梳理了歷代氣象理論和經驗,對各種氣象現(xiàn)象提出了自己獨特的觀點和理論,使之成為一門系統(tǒng)的古代氣象學,是古代天氣預報的思想基礎。亞里士多德把大氣現(xiàn)象與天文學領域的觀測研究范圍分為兩部分:一部分是月球軌道內到地面的區(qū)域,另一部分是月球軌道以外的區(qū)域。他認為,濕冷輻散形成水汽,水汽是雨水的來源,而干熱輻散能形成風。因此,空氣是水蒸氣和風的共同介質,而雪、雨、云、露、霜等關于水的狀態(tài)改變都是根據(jù)空氣溫度的變化而形成的。也正是因為亞里士多德關于氣象學的地位與權威也決定了往后西方氣象學長達兩千年的理論都未能擺脫亞里士多德氣象學的影響。[[]錢維宏.天氣學:北京大學出版社,2004:103-142此外,天氣預報還是國民經濟和國防建設服務的重要手段。天氣預報按預報范圍來劃分,包括地方性天氣預報與區(qū)域性天氣預報。根據(jù)服務對象的需要,還可以提供每日公共天氣預報和專業(yè)天氣預報。根據(jù)時間限制,也可以分為短期、中期、長期天氣預報。氣象臺通過多種渠道及時準確發(fā)布天氣預報,特別是災害性天氣預報,對保護人民群眾生命財產安全,促進經濟發(fā)展具有重要作用。天氣預報技術還隨著電報技術的強大而逐步發(fā)展起來。在20世紀50年代之前,天氣預報都是以天氣學原理為基礎的。但隨著計算探測技術的發(fā)展,我們國家在原有的數(shù)理統(tǒng)計方法和傳統(tǒng)的天氣圖方法上,還將衛(wèi)星探測數(shù)據(jù)和氣象雷達應用到預報業(yè)務中,并同時發(fā)展了數(shù)值預報方法。該方法通過確定大氣質量、能量和動量守恒原理,可以顯著提高天氣形勢預報的質量,預測大氣的物理過程,促進天氣預報的客觀量化。[[]大氣科學辭典編委會.大氣科學辭典:氣象出版社,1994:624總之,天氣預報的誕生給人們帶來了很多便利,可以使人們在出門前做好準備。對漁業(yè)和農業(yè)而言更有意義,漁民、農夫可以借此減少由氣象災害所造成的各種損失。此外,它還可以防止由氣象災害引起的山體滑坡、洪水、泥石流等次生災害造成的各種損失,提前預報可以讓有關部門提前防范。但由于某些地方檢測水平能力限制,一些地方性惡劣天氣無法準確預測,這方面還是需要人們加強防范。1.2研究的目的與意義目的:這次以開發(fā)移動天氣預報應用系統(tǒng)為選題,主要是想了解天氣究極對我們日常生活有多大的影響,且我們?yōu)榇四芴崆白龀鲈鯓拥念A防措施,通過翻查氣象學的資料,我們可以知道,天氣主要受風、云、霧、雨、閃、雪、霜、雷、雹、霾、氣溫、氣壓、濕度、風、等各種天氣元素的影響[][]百度百科:/item/%E5%A4%A9%E6%B0%94/24449,2020/3/16。意義:本移動天氣預報應用系統(tǒng)的開發(fā)宗旨是便利人們的日常工作與娛樂出行,并延伸有關氣象災害信息的覆蓋范圍,這樣廣大人民群眾就能夠在最短的時間里獲取到最新最快的氣象災害預警信息,以便群眾提前做好預防措施,把由氣象災害帶來的損失降到最低程度。1.3國內發(fā)展現(xiàn)狀如今,天氣預報不僅是方便了人們的出行還對我國的許多社會經濟部門的發(fā)展都有很大貢獻,具體可看以下信息:1.政府部門需要根據(jù)氣象部門提供的氣象預報警報信息,對可能出現(xiàn)的高溫、雷暴、狂風、暴雨、臺風等災害提前采取措施,減少生命財產的損失。2.氣象信息對水利、電力、民航、運輸?shù)炔块T工作起著關鍵的作用。3.氣象預報警報信息系統(tǒng)以及公共氣象信息服務是一種"公益性"的社會基礎設施,利用該設施可以為人民生活或生產提供所需要的優(yōu)質氣象信息服務。4.氣象信息是重要的經濟來源。據(jù)有關部門的研究表明,企業(yè)若能有效利用氣象信息,其經濟效益會顯著提高。例如電冰箱和空調器廠商可以根據(jù)氣溫變化與銷售額增減的關系,借此整理出相關的銷售與生產計劃。[[]百度知道:/question/1737833798159904787.html,2020/3/17。1.4系統(tǒng)結構論文將分為六個部分對所研究的課題進行闡述。第一章:詳細介紹本系統(tǒng)的開發(fā)背景與意義,并對天氣預報在我國發(fā)展的現(xiàn)狀做一個簡單的描述。第二章:詳細介紹本系統(tǒng)的開發(fā)環(huán)境和與之相關的技術。第三章:分析系統(tǒng)目標,構建需求用戶分析圖,明確本系統(tǒng)的設計。第四章:系統(tǒng)的總體代碼設計與功能代碼塊的實現(xiàn),保證系統(tǒng)的數(shù)據(jù)庫功能的正常使用并構建結構圖,最后展現(xiàn)系統(tǒng)功能。第五章:測試并分析系統(tǒng)。明確系統(tǒng)的運行環(huán)境,對系統(tǒng)的各方面性能展開評估,輸出測試結果;第六章:對全文的概括和總結。
第二章相關理論與技術2.1開發(fā)環(huán)境的介紹開發(fā)環(huán)境:開發(fā)工具:androidstudio3.0開發(fā)系統(tǒng):MicrosoftWindows10腳本語言:Java數(shù)據(jù)庫:Litepal輔助網站及工具:輔助軟件:夜神模擬器獲取天氣信息的網站:http://guolin.tech/api/china獲取背景圖的網站:http://guolin.tech/api/bing_pic2.2相關技術的介紹2.2.1Java技術介紹在人類計算機的發(fā)展歷史上,java已經發(fā)展成一門影響深遠且面向全世界的編程語言。在某種意義上,它超越了編程語言的范疇,成為了一種開發(fā)的規(guī)范。不僅如此目前java已成為語言倡導開源的精神和自由,并以此吸引著在世界各地無數(shù)優(yōu)秀的程序員。事實上,沒有任何一種編程語言能像java一樣能吸引這么多程序員,或者派生出這么多開源框架。主要是由于java語言是一種具有解釋性、高性能、面向對象、動態(tài)等特點的編程語言。它吸收了C++語言的所有優(yōu)點并摒棄掉C++中讓人難以理解的多重繼承和指針的概念。java語言作為眾多面向對象編程語言的代表,不僅面向對象理論得到了很好的實現(xiàn),它還允許程序員以優(yōu)雅的思維方式開發(fā)復雜的程序。[[]sunddenly,Java語言介紹,網址:/sunddenly/articles/4050233.html,2014/10/25。另外,與java語言相關的JavaEE規(guī)范包含了目前最流行的軟件工程概念。在JavaEE規(guī)范、平臺和相關框架中總能找到各種先進的設計思想。在某種程度上,學習Java語言相當于系統(tǒng)地學習軟件開發(fā)知識,而不僅僅是學習編程語言。到目前為止,大部分銀行、電信、證券、電子商務、電子政務等系統(tǒng)已經建立在Javaee平臺上,或者正在逐步向javaee平臺過渡。JavaEE規(guī)范是目前最成熟、應用最廣泛的企業(yè)應用開發(fā)規(guī)范。[[]sunddenly,Java語言介紹,網址:/sunddenly/articles/4050233.html,2014/10/25。2.2.2AndroidStudio開發(fā)工具介紹AndroidStudio是Google推出基于IntelliJIDEA的Android應用開發(fā)集成開發(fā)環(huán)境(IDE),而且為提高Android應用的構建效率提供了以下9個功能:1.基于Gradle項目自動化構建開源工具的構建系統(tǒng)。2.自帶多種不同手機類型且功能強大模擬器。3.InstantRun運行機制可將變更推送到正在運行的應用中,無需重新構建Apk。4.使用Room將數(shù)據(jù)持久化數(shù)據(jù)庫(SQLite)。5.可使用apkanalyzer分析工具對要預構建APK進行調試和分析。6.擁有豐富的網絡監(jiān)控工具、測試工具和測試工具。7.C++和NDK支持,以及LLDB可以調試原生代碼。8.支持兩大代碼分別是:Lua編碼和Koltin編碼。9.強大的XML布局編輯器,讓用戶的UI開發(fā)更便捷。[[]牛八少爺,AndroidStudio簡介,CSDN論壇:/niuba123456/article/details/81041082,2018/07/15。2.2.3LitePal介紹Litepal是一個安卓數(shù)據(jù)庫框架,它可以封裝了一些正常開發(fā)中最常用的數(shù)據(jù)庫功能,底層采取的是對象關系映射模式,使開發(fā)人員無需編寫一行SQL語句就可以完成表的創(chuàng)建、添加、刪除和查詢等各種操作。[[]北極熊的微笑,Android中數(shù)據(jù)庫開發(fā)之LitePal的基本用法(總結),CSDN論壇:/lpcrazyboy/article/details/82216760,2018/08/30。第三章系統(tǒng)可行性需求分析3.1系統(tǒng)目標陽光明媚的天氣,會使人心情愉悅。但是惡劣的天氣情況下不僅會給交通帶來嚴重的堵塞,且晝夜溫差的大幅度變化也會使我們染上許多季節(jié)性疾病。在農業(yè)方面,更是靠天吃飯。什么時候播種,什么時候施肥,什么時候收獲,都要密切結合天氣情況來決定,氣溫和降雨量就決定了農民的年收成。而在漁業(yè)上也是如此,漁民們受低溫、降雨、陰雨、少日照等天氣影響,魚類活動范圍縮小,生產效率就會下降。因此,本移動天氣預報應用系統(tǒng)的目標旨在預測出最精準的天氣預報信息,減少惡劣天氣的變化帶給我們的日常麻煩。3.2目標用戶據(jù)調查,本天氣預報應用系統(tǒng)的目標用戶大致上可以劃分以下三類:普通群眾、農民、漁民,具體描述如表3.2.1所示。表3.2.1移動天氣預報應用系統(tǒng)目標用戶及影響表用戶角色天氣對他們造成的影響普通群眾下雨天會給人們的出行帶來一定的麻煩且天氣晝夜溫差的大幅度變化也會使我們染上許多季節(jié)性疾病,因此如果有了天氣預報就能有效的采取防護措施。農民農民們對于天氣預報的需求比普通群眾的大,因為天氣的氣候條件會影響農業(yè)的產出,農作物的播種和收獲與天氣有關。天氣的好壞影響著農作物的收成情況。因此,準確的天氣預報對農業(yè)生產具有重大作用。漁民漁民們受低溫、降雨、陰雨、少日照等天氣影響,魚類活動范圍縮小,攝食量低于常年同期,生長減緩,造成單位面積產量下降,生產效率下降。因此如果有了天氣預報漁夫們就能根據(jù)天氣的變化做出相對應的防護措施。3.3系統(tǒng)設計及作用系統(tǒng)設計:通過上述的調查和分析,本移動天氣預報應用系統(tǒng)設計主要是實現(xiàn)切換城市、顯示實時的時間、選擇地地名、氣溫、天氣情況、pm2.5指數(shù)、空氣質量指數(shù),以及選擇地未來七天的日期、最低溫、最高溫、天氣情況等功能。作用:其中切換城市功能是為了方便用戶的出行,能夠讓用戶看要去的地點或身處所在的城市的天氣情況。然后顯示實時時間是方便用戶在本天氣預報應用系統(tǒng)內也能查看時間。接著顯示出選擇地的地名、實時氣溫、實時的天氣情況以及實時的pm2.5與空氣質量指數(shù)等天氣數(shù)據(jù)都是為了讓用戶能在第一時間準確了解到選擇地的實時氣象信息。而最后顯示的選擇地未來七天的時間、最低溫、最高溫、天氣情況等功能是為了讓用戶能提前知道未來幾天的氣象信息后能夠提前的安排好自己的工作與生活,如:天冷了多穿一件衣服能預防天氣變冷所帶來的感冒發(fā)燒,而農民與漁夫們則可以提前的安排好自己的工作避免天氣變冷帶來的經濟損失。第四章系統(tǒng)總體設計與開發(fā)4.1系統(tǒng)總體設計思路首先我們要明確本天氣預報應用系統(tǒng)要實現(xiàn)以下功能,分別是切換城市、顯示時間、選擇地地名、氣溫、天氣情況、pm2.5指數(shù)、空氣質量指數(shù)、未來七天的日期、最低溫度、最高溫度、天氣情況等功能。以上功能共分四階段完成,第一個階段就是首先創(chuàng)建好接收網絡獲取到的氣象JSON數(shù)據(jù)所需要的數(shù)據(jù)庫和表,這樣的話我們就能把氣象數(shù)據(jù)存到我們自己創(chuàng)建的數(shù)據(jù)庫表格里面。本文選擇了Litepal數(shù)據(jù)庫。第二階段則是需要從網絡上獲取的所有的省、市、縣的地名數(shù)據(jù)并全部遍歷一次用于切換城市。第三階段,從網絡查詢我們需要的氣象JSON數(shù)據(jù)信息,隨后采用GSON方法解析數(shù)據(jù),并通過XML布局使天氣預報的信息顯示在應用系統(tǒng)上。第四階段,添加背景圖并實現(xiàn)自動刷新功能這樣用戶就不需要手動更新了,當然必不可少還有切換城市和手動更新等功能。4.2系統(tǒng)總體開發(fā)過程與代碼貼圖4.2.1第一階段1.首先先創(chuàng)建一個SunnyWeather項目具體請看看圖1:圖1新建項目2.將該天氣預報應用系統(tǒng)所需要的各種依賴庫在gradle文件里先聲明好,具體請看圖2:圖2添加依賴庫3.接著在com.SunnyWeather.android包里在創(chuàng)建幾個包分別為DataBase__DB、Gson__GSON、Service__SERVICE、Util__UTIL,其中DataBase__DB包是存放有關數(shù)據(jù)庫的代碼,Gson__GSON包是GSON代碼的、而Service__SERVICE包是服務代碼,最后的Util__UTIL包則是工具的代碼,具體請看圖3:圖3新建四大包名4.由于是數(shù)據(jù)庫中的表所以是在DataBase__DB的包下面創(chuàng)建三個類分別為province__、city__、county__分別來存放氣象數(shù)據(jù)的省、市、縣數(shù)據(jù)。具體請看圖4:圖4創(chuàng)建三大類5.首先先編寫DataBase__DB的包下省數(shù)據(jù)代碼province___類,具體的代碼請看圖5:圖5province_類6.編寫市數(shù)據(jù)代碼city___類,具體的代碼請看圖6:圖6city_類7.編寫縣數(shù)據(jù)代碼county___類,具體的代碼請看圖7:圖7county_類8.創(chuàng)建完三個表之后就可以新建一個litepal.xml數(shù)據(jù)庫類把三個表添加進去,最后再去清單文件配置一下Litepalapplication具體代碼請看圖8-圖10:圖8新建數(shù)據(jù)庫文件圖9Litepal文件圖10清單文件4.2.2第二階段1.首先先在Util__UTIL包下新建一個httputil__類用于與服務器交互,具體代碼請看圖11:圖11httputil_類2.在util包下新建一個utility__類來專門處理省、市、縣JSON數(shù)據(jù),具體代碼請看圖12-圖14:圖12utility_類圖13utility_類圖14utility_類3.接著開始編寫遍歷省、市、縣的界面,在新建一個布局文件命名為choose____area,具體代碼請看圖15:圖15choose_area布局文件4.新建一個choose__areafragment碎片類用來接收從服務器返回的省、市、縣JSON數(shù)據(jù)并把數(shù)據(jù)傳給utility__類中的方法進行解析具體代碼請看圖16-圖22:圖16choose__areafragment碎片圖17choose__areafragment碎片圖18choose__areafragment碎片圖19choose__areafragment碎片圖20choose__areafragment碎片圖21choose__areafragment碎片圖22choose__areafragment碎片5.由于剛剛定義的碎片不能直接在界面上顯示,所以需要在主布局文件下修改代碼添加剛剛碎片,具體代碼請看圖23-圖24:圖23主布局文件圖24主布局文件6.由于我們在第三步碎片布局下已經定義了顯示當前地方的標題了,所以需要把原來的標題欄給設置成noactionbar即去除標題欄,最后在清單文件中定義網絡權限即可,具體代碼請看圖25-26styles文件、圖27-28清單文件:圖25styles文件圖26styles文件圖27清單文件圖28清單文件4.2.3第三階段1.由于從服務器返回有關氣象信息的JSON數(shù)據(jù)結構會復雜一些,所以我們用GSON的方法進行解析,另外我們還需在Gson__GSON包下創(chuàng)建basic___類具體代碼請看圖29:圖29basic_類2.接著繼續(xù)在Gson__GSON包下創(chuàng)建aqi__類具體代碼請看圖29:圖30aqi_類3.接著繼續(xù)在Gson__GSON包下創(chuàng)建now__類具體代碼請看圖31:圖31now_類4.接著繼續(xù)在Gson__GSON包下創(chuàng)建suggstion__類具體代碼如下圖32:圖32suggstion_類5.接著繼續(xù)在Gson__GSON包下創(chuàng)建forecast__類具體代碼如下圖33:圖33forecast_類6.在Gson__GSON包下創(chuàng)建weather__類,用來對剛剛定義的所有類具體代碼如下圖34:圖34weather_類7.在com.example.SunnyWeather包下創(chuàng)建一個名叫weather__acitivity的活動類來接收從服務器返回的天氣JSON數(shù)據(jù),并將其布局名改為activity___weather,創(chuàng)建完后就新建一個頭部欄布局名叫title__,具體代碼如下圖35-圖37:圖35weather__acitivity類圖36weather__acitivity布局圖37title_布局8.繼續(xù)新建一個now___布局,用于顯示當前實時氣溫、天氣情況,具體代碼如下圖38:圖38now_布局9.分別創(chuàng)建一個forecast___布局與forecastitem子項目布局,用作顯示未來7天天氣預報的時間、最低溫度、最高溫度、天氣信息,具體代碼如下圖39-圖40:圖39forecast_布局圖40forecast_item子布局10.創(chuàng)建一個aqi__布局,用來顯示實時的pm2.5與空氣質量指數(shù),具體代碼如下圖41-圖42:圖41aqi_布局圖42aqi_布局11.創(chuàng)建一個suggestion___布局,用于顯示根據(jù)實時天氣情況所反饋給用戶的一些暖心實用小建議,具體代碼如下圖43:圖43suggstion_布局12.最后把我們剛剛創(chuàng)建的所有布局都引用我們一開始就創(chuàng)建好布局的activity____weather,具體代碼如下圖44:圖44activity_weather布局13.在util包下的utility___類里添加一個方法專門用來解析氣象的JSON數(shù)據(jù),具體代碼如下圖44:圖44utility_類14.接著返回到com.example.SunnyWeather包下的weather__acitivity類編寫接收服務器返回的天氣JSON數(shù)據(jù)代碼,并將得到的數(shù)據(jù)傳給剛剛定義的的方法,最后將所有得到的數(shù)據(jù)顯示在應用程序的界面上,具體代碼如下圖45-圖49weather_acitivity類:圖45weather_acitivity類圖46weather_acitivity類圖47weather_acitivity類圖48weather_acitivity類圖49weather_acitivity類15.接著修改com.example.SunnyWeather包下的choose___areafragment類,實現(xiàn)點擊當前選擇想要查看的縣天氣預報就能直接跳轉到我們剛剛編輯好可以顯示所有氣象數(shù)據(jù)weather__acitivity類,具體代碼如下圖50:圖50choose_areafragment類16.最后在MainActivity添加緩沖數(shù)據(jù)判斷,具體代碼如下圖51:圖51MainActivity類4.2.4第四階段1.設置本天氣預報應用系統(tǒng)的背景圖片,由于只設置一張一成不變的圖片太單調,這里我們通過一個接口去獲取每天都會更新的一張圖片,先修改activity_weather文件對圖片的大小進行設置,具體代碼如下圖52-圖53activity_weather布局:圖52activity_weather布局圖53activity_weather布局2.修改com.example.SunnyWeather包下的weather___activity類從服務器接口得到圖片并把圖片顯示在應用程序的界面上,具體代碼如下圖53-圖54:圖53weather___activity類圖54weather___activity類3.為了讓我們的天氣預報應用系統(tǒng)的背景圖片與系統(tǒng)的狀態(tài)欄達到相融的效果就要往com.example.SunnyWeather包下的weather___activity類中添加一些代碼,具體代碼如下圖55:圖55weather___activity類4.實現(xiàn)手動更新功能,方便用戶第一時間了解天氣資訊,先編輯activity____weather文件,給他添加一個下拉更新功能,具體代碼如下圖56:圖56activity_weather布局5.返回com.example.SunnyWeather包下的weather___activity類里添加設置下拉功能的監(jiān)聽代碼,具體代碼如下圖57-圖61:圖57weather___activity類圖58weather___activity類圖59weather___activity類圖60weather___activity類圖61weather___activity類6.實現(xiàn)切換城市功能,接著首先返回到title____文件添加一個切換其他城市的按鈕,然后返回activity____weather文件添加滑動顯示全國所有的省、市、縣功能,接著到com.example.SunnyWeather包下的weather___activity類里實現(xiàn)剛剛添加的所有代碼邏輯,最后返回com.example.SunnyWeather包下choose_areafragment類進行頁面跳轉的判斷,具體代碼如下圖62-63title_布局、圖64-66activity_weather布局、圖67-70weather_activity類、圖71-72choose_areafragment類:圖62title_布局圖63title_布局圖64activity_weather布局圖65activity_weather布局圖66activity_weather布局圖67weather_activity類圖68weather_activity類圖69weather_activity類圖70weather_activity類圖71choose_areafragment類圖72choose_areafragment類7.在Service_SERVICE包下創(chuàng)建的一個名叫auto_update_service的服務實現(xiàn)自動刷新功能,具體代碼如下圖73-圖74:圖73auto_update_service類圖74auto_update_service類8.最后一步修改圖標,在清單文件上添加屬于本天氣預報應用系統(tǒng)的圖標和名字,具體代碼如下圖75-圖76:圖75清單文件圖76strings文件4.3數(shù)據(jù)庫結構表根據(jù)我們從服務器中接收的氣象數(shù)據(jù),可得到以下4.3.1、4.3.2、4.3.3數(shù)據(jù)庫結構表:表4.3.1province省結構表序號列名主外鍵數(shù)據(jù)類型是否可空描述1id主鍵integer否自增長id2province_name外鍵text否省名字3province_code外鍵integer否省號碼 表4.3.2city市結構表序號列名主外鍵數(shù)據(jù)類型是否可空描述1id主鍵integer否自增長id2city_name外鍵text否市名字3city_code外鍵integer否市號碼4province_id外鍵integer否省號碼表4.3.3county縣結構表序號列名主外鍵數(shù)據(jù)類型是否可空描述1id主鍵integer否自增長id2weather_id外鍵text否天氣代號3county_name外鍵text否縣名字4city_id外鍵integer否市號碼4.4系統(tǒng)界面與功能展示app圖標,具體如下圖77:圖77圖標app界面,具體如下圖78-79界面:圖78界面圖79界面切換城市的省列表,具體如下圖80: 圖80省列表切換城市的市列表,具體如下圖81: 圖81市列表切換城市的縣列表,具體如下圖82: 圖82縣列表切換后的界面,具體如下圖83: 圖83切換界面刷新功能,具體如下圖84: 圖84刷新功能第五章系統(tǒng)性能測試5.1系統(tǒng)測試環(huán)境本系統(tǒng)測試部署的硬件環(huán)境如下:PC機:惠普LAPTOP-305UU2OD處理器:Intel(R)Corei5-6300HQcpu@2.30Ghz硬盤空間:1T內存:8GB測試工具:測試軟件:AndroidStuodio模擬器:夜神模擬器()數(shù)據(jù)庫:SQLiteStudio(3.1.1)5.2系統(tǒng)功能測試功能響應時間結論手動更新1s滿足需求自動更新6h滿足需求切換城市0.3157s滿足需求5.3系統(tǒng)測試結果本天氣預報應用系統(tǒng)經測試功能均實現(xiàn)正常。
第六章總結與分析本次選擇天氣預報應用系統(tǒng)作為論文題材,主要是想運用所學的知識為自己的生活平添一份色彩,雖然各大軟件平臺已經有很多關于天氣預報應用軟件,但是我想創(chuàng)建一個獨一無二的屬于我自己的天氣預報應用軟件,我覺得這樣做對我的意義很大,我也會因此加倍珍惜自己編寫的應用軟件。本次的天氣預報應用系統(tǒng)開發(fā)給了我以下三個方面的想法:1.對軟件工程這個專業(yè)有了一些新的想法,代碼這個東西雖然是冷冰冰的,但是人的想法與創(chuàng)意卻是活的。我們可以利用自己的想法與知識去創(chuàng)造一些便利自己的生活甚至是造福社會的產物。這樣不僅實現(xiàn)了自己的滿足感,更重要的是可以推動社會的發(fā)展,一舉兩得。2.通過本次的系統(tǒng)開發(fā),把之前所學的一大部門的知識全部都糅合在了一起,這樣不僅加深了對之前所學知識的印象,更重要的是加深了對代碼的理解,有利于形成縝密的邏輯思維,也為今后做其他項目打下了堅實的基礎。3.掌握了一個具體的項目是應該先從用戶需求的角度出發(fā),其次形成一個大綱思路,接著在具體細分每一個環(huán)節(jié)應該怎么去做。這樣有利用培養(yǎng)自己的全局觀,我覺得不止是打代碼,做每一件事情首先都得有一個整體的思路,然后在細分每一個環(huán)節(jié),這樣才能做到面面俱到。不足:本次天氣預報應用系統(tǒng)的不足點在于該氣象數(shù)據(jù)均不是真實的數(shù)據(jù),而是隨機的數(shù)據(jù),由于網上真實的天氣預報數(shù)據(jù)都是以收費的形式呈現(xiàn),所以本次天氣預報應用系統(tǒng)開發(fā)就沒有采用真實天氣預報數(shù)據(jù),而是通過網絡上提供的免費api接口來獲取氣象數(shù)據(jù),當然缺點就是數(shù)據(jù)不真實且隨機分配。改進:下次可以從網絡上接收一些真實數(shù)據(jù)的api接口,這樣才是一款真正的天氣預報應用系統(tǒng),其次可以引入電商模式,商家可以在線銷售防霧霾口罩、戶外用品等商品,對于商家和平臺而言都有一定的好處。用戶也能根據(jù)當?shù)氐奶鞖馇闆r和外出在線購買相關商品,為人們生活帶來一定的便利。最后還可以把軟件上線到軟件應用平臺,這樣不僅讓更多的人使用自己開發(fā)的軟件也能帶來一筆“小財富”。
參考文獻一、著作文獻1、錢維宏:天氣學,北京大學出版社,2004:103-1422、大氣科學辭典編委會:大氣科學辭典,氣象出版社,1994:624二、電子文獻1、百度百科:/item/%E5%A4%A9%E6%B0%94%E9%A2%84%E6%8A%A5/84068#reference-[1]-11134158-wrap,2020/3/15。2、百度百科:/item/%E5%A4%A9%E6%B0%94/24449,2020/3/16。3、百度知道:/question/1737833798159904787.html,2020/3/17。4、sunddenly:Java語言介紹,網址:/sunddenly/articles/4050233.html,2014/10/25。5、牛八少爺:AndroidStudio簡介,CSDN論壇:/niuba123456/article/details/810410822018/07/15。6、北極熊的微笑,Android中數(shù)據(jù)庫開發(fā)之LitePal的基本用法(總結),CSDN論壇:/lpcrazyboy/article/details/82216760,2018/08/30。
致謝 作為一名即將踏入社會的應屆生,心里難免有一些起伏,有不舍有害怕有不安也有期待。回想起大學這四年間,真的有太多難忘的回憶,一路上有太多的感動,而我也慢慢從一個懵懂少年變?yōu)橐粋€社會青年。 首先我得感謝我的指導老師馬世登老師,本論文是在馬世登老師悉心的指導下完成的,無論是從本文選題給的意見還是從系統(tǒng)的設計給的指導,這些都是老師傾注了許多心血,才得以讓我的論文在今天順利完成,在此由衷的感謝馬世登老師。其次我想感謝我大學四年間所有同學和朋友,他們在我迷?;蛘呤б獾臅r候都給了我許多的幫助,接著我想感謝在大學四年間教過我知識的全體老師,是你們傳授了知識和做人的道理給我,無論我今后會到達什么樣的高度,你們教給我的東西我一定牢記于心的。最后我想感謝我的輔導員,雖然我們從來沒有上過輔導員的課,但是輔導員卻經常像位“母親”一樣真心實意的關心著我們,無論是叮囑我們在外要小心不要深夜晚歸和喝酒還是大四時一篇篇的工作推送,這些都是你的關于,謝謝您胡順林老師和陳注清老師。 最后,我由衷的感謝抽出時間聽我論文的專家老師們,由于本人的寫作水平有限,在本文的寫作中難免有僻陋,請眾多老師和同學見諒。
電腦無法識別U盤該怎么辦HYPERLINK電腦無法識別U盤怎么辦?打開我的電腦上單擊右鍵,在快捷菜單里,選擇“管理”,打開“計算機管理”窗口。在計算機管理窗口里,選擇“存儲”下面的“磁盤管理”,如果看得到沒有盤符的U盤,那么在這個U盤上按鼠標右鍵,選擇“更改驅動器名稱和路徑”選項,就打開了“更改……的驅動器號和路徑”對話框。再點擊“更改”按鈕,打開“更改驅動器號和路徑”的對話框,在“指定以下驅動器號”的右邊下拉列表里,選擇你希望分配給U盤的驅動器號,盡可能靠后選擇,比如X、Y、Z,選擇好后,單擊確定按鈕,回到上一次“更改……的驅動器號和路徑”對話框窗口,再一次單擊確定,就回到“計算機管理”窗口。至此,如果一切正常,就給U盤單獨設置了一個長久使用的驅動器號,并卻,不受虛擬驅動器的影響了。建議將U盤插到電腦上,看任務欄中是否顯示圖標,如果顯示,在我的電腦點右鍵查看屬性——高級——硬件——設備管理器——查看里面是否有問號的設備,在問號設備上點右鍵——更新驅動程序然后下一步——否暫時不連接到網絡——下一步自動安裝軟件(推薦)就可以了另外:系統(tǒng)不認U盤的幾種處理方法1.禁用主板usb設備。管理員在CMOS設置里將USB設備禁用,并且設置BIOS密碼,這樣U盤插到電腦上以后,電腦也不會識別。這種方法有它的局限性,就是不僅禁用了U盤,同時也禁用了其他的usb設備,比如usb鼠標,usb光驅等。所以這種方法管理員一般不會用,除非這臺電腦非常重要,值得他舍棄掉整個usb總線的功能。但是這種屏蔽也可以破解,即便設置了密碼。整個BIOS設置都存放在CMOS芯片里,而COMS的記憶作用是靠主板上的一個電容供電的。電容的電來源于主板電池,所以,只要把主板電池卸下來,用一根導線將原來裝電池的地方正負極短接,瞬間就能清空整個CMOS設置,包括BIOS的密碼。隨后只需安回電池,自己重新設置一下CMOS,就可以使用usb設備了。(當然,這需要打開機箱,一般眾目睽睽之下不大適用~~)2.修改注冊表項,禁用usb移動存儲設備。打開注冊表文件,依次展開"HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\usbehci”雙擊右面的“Start”鍵,把編輯窗口中的“數(shù)值數(shù)據(jù)”改為“4”,把基數(shù)選擇為“十六進制”就可以了。改好后注銷一下就可以看見效果了。為了防止別人用相同的方法來破解,我們可以刪除或者改名注冊表編輯器程序。提示:“Start”這個鍵是USB設備的工作開關,默認設置為“3”表示手動,“2”是表示自動,“4”是表示停用。3.在computermanagement里將removablestorage的使用權限禁止。computermanagement是一個windows管理組件,可以在控制面板——管理工具——計算機管理打開。在該工具窗口中storage——removablestorage——property中,general項,可以控制系統(tǒng)托盤是否顯示security則可以管理移動存儲設備的使用權限。在security中將普通用戶的使用權限降低,就可以達到禁用u盤的目的。破解的方法也很簡單,管理員降低普通用戶移動存儲設備的使用權限,但未必禁用computermanagement的使用權限。普通用戶可以通過這個工具解除usb移動存儲設備的使用權限限制。另外,值得一提的是,如果u盤插到電腦上后可以驅動,但是我的電腦里卻沒有盤符,很有可能是管理員改動了u盤的默認盤符,使得我的電腦不能識別。這種情況,可以在movablestorage中看到u盤驅動器??梢栽趗盤驅動器屬性設置里為u盤重新分配一個盤符,再重新插拔一次u盤,就可以在我的電腦里看到u盤的盤符了。一、首先可以將該U盤換到別的機器上,看使用是否正常。如果排除了硬件損壞的可能,一般就是軟件方面有問題。在WindowsXP+SP1操作系統(tǒng)下,有些USB2.0設備的確常常出現(xiàn)工作不穩(wěn)定的問題,可以試試安裝設備自帶的USB2.0驅動程序。另外最好不要使用USB延長線,防止因為供電不足而造成不穩(wěn)定現(xiàn)象。如果仍無效,可以在主板BIOS設定中,將USB接口強行設置為USB1.1傳輸速率。二、(適用于WIN98)啟動計算機,進入主板BIOS設置,檢查BIOS中USB的相關選項是否已經打開:OnChipUSB設定為Enabled;USBController設定為Enabled;PNPOSInstalled設定為Yes;AssignIRQForUSB設成Enabled。要正常使用USB設備首先要開啟USB接口,在主板BIOS里可以進行此項工作,一般來說只需在BIOS中進入ChipsetFeatures設置,并將USBKeyborad/MouseLegacy選項設定為Enable,就能夠保證在操作系統(tǒng)下使用USB鍵盤了。這些選項的作用是打開主板芯片組對USB設備的完全支持,為系統(tǒng)識別USB設備做準備工作。三、USB口接觸不好處理辦法:拔下,等十秒鐘再插上USB口,使接觸完好;五、閃存盤驅動程序沒有安裝完成(WIN98系統(tǒng)下)處理辦法:鼠標點“我的電腦”,選擇屬性找到“通用串行總線”,刪除其中的USBMASSSTORAGE項,再點擊“刷新”,然后按照提示重新安裝一次驅動程序。六、接其它USB設備(如掃描儀、打印機、數(shù)碼相機)時可以正常使用,接優(yōu)盤時閃指示燈不亮,不能夠使用。1、檢查優(yōu)盤與電腦的聯(lián)接是否正常,并換用其它USB接口測試。2、檢查設備管理器,看是否出現(xiàn)”通用總線設備控制器”條目,如果沒有,請將電腦主板BIOS中USB接口條目*激活(ENABLE)。3、如果電腦安裝過其它類型USB設備,卸載該設備驅動程序,并首先安裝優(yōu)盤驅動程序。4、到其它電腦試用此優(yōu)盤,確認是否優(yōu)盤不良。七、啟動型優(yōu)盤在的電腦上無法實現(xiàn)啟動,可能是主板型號不支持。如何判斷一塊主板是否支持閃存盤啟動系統(tǒng)啟動型優(yōu)盤是采用模擬USB軟驅和USB硬盤的方式啟動電腦的。只要電腦主板支持USB設備啟動,即BIOS的啟動選項中有USB-FDD、USB-HDD或是其它類似的選項,就可以使用啟動型優(yōu)盤啟動電腦。八、第一次在電腦上使用優(yōu)盤,未出現(xiàn)提示發(fā)現(xiàn)新硬件的窗口,驅動程序無法安裝的原因可能是:1、主板usbcontroller未啟用解決辦法:在電腦主板BIOS中啟用此功能。2、usbcontroller已經啟用但運行不正常解決辦法:在設備管理器中刪除”通用串行控制器”下的相關設備并刷新。3、優(yōu)盤被電腦識別異常,在設備管理器中表現(xiàn)為帶有黃色?或!的”其它設備”或“未知設備”。解決辦法:刪除此設備并刷新。九、大容量的U盤(例如兼具MP3播放器或錄音功能的U盤)或移動硬盤在電腦上無法正常使用,雖然系統(tǒng)提示找到了未知的USB設備,但無法正確識別U盤或移動硬盤。原因可能是:1.USB接口供電不足:系統(tǒng)為每個USB接口分配了500mA的最大輸出電流,一般的U盤只需要100mA的工作電流,因此在使用過程中不會出現(xiàn)什么問題。大多數(shù)移動硬盤所使用的是普通的2.5英寸硬盤,其工作電流介于500mA~1000mA之間,此時假如僅僅通過USB接口供電,當系統(tǒng)中并無其他USB設備時,那么還是可以勉強使用的,但如果電壓不穩(wěn)的話,就隨時可能出現(xiàn)供電不足的問題。特別是使用支持USB2.0的移動硬盤時,情況最為嚴重。另外,如果你的筆記本電腦使用電池供電,那么USB接口所分配的電量就更小了。2.使用了外接的USB擴展卡:在筆記本電腦中使用USB2.0的U盤或移動硬盤時,如果筆記本電腦不支持USB2.0技術,一般必須通過PCMCIA卡轉USB2.0的擴展卡來間接實現(xiàn)支持,這些擴展卡基本上都采用NEC公司的D720100AGMUSB控制芯片,少則提供兩個USB2.0接口,多則提供五個USB2.0接口,對一般用戶而言足夠使用了。由于PCMICA接口提供的電源功率比板載USB接口要小,這樣就會由于供電不足而導致移動硬盤工作的出現(xiàn)問題。解決方案:1.它從USB連接線上接移動硬盤的一端引出一根轉接線,可以插入電腦背后的PS/2接口取電,這里可以比USB接口提供更大的電流輸出。2.利用電源補償線(也稱“鍵盤取電線”),如果U盤或移動硬盤的包裝盒中提供了選配的電源適配器,你就可以直接使用外接電源,這樣就可以從根本上避免供電不足的情況發(fā)生了前置USB線接錯。當主板上的USB線和機箱上的前置USB接口對應相接時把正負接反就會發(fā)生這類故障,這也是相當危險的,因為正負接反很可能會使得USB設備燒毀。所以盡量采用機箱后置的USB接口,也少用延長線.也可能是斷口有問題,換個USB端口看下.USB接口電壓不足。當把<ahref="mobileharddisk">移動硬盤</a>接在前置USB口上時就有可能發(fā)生系統(tǒng)無法識別出設備的故障。原因是<ahref="">移動硬盤</a>功率比較大要求電壓相對比較嚴格,前置接口可能無法提供足夠的電壓,當然劣質的電源也可能會造成這個問題。解決方法是<ahref="">移動硬盤</a>不要接在前置USB接口上,更換劣質低功率的電源或盡量使用外接電源的硬盤盒,假如有條件的話。主板和系統(tǒng)的兼容性問題。呵呵這類故障中最著名的就是NF2主板與USB的兼容性問題。假如你是在NF2的主板上碰到這個問題的話,則可以先安裝最新的nForce2專用USB2.0驅動和補丁、最新的主板補丁和操作系統(tǒng)補丁,還是不行的話嘗試著刷新一下主板的BIOS一般都能解決。系統(tǒng)或BIOS問題。當你在BIOS或操作系統(tǒng)中禁用了USB時就會發(fā)生USB設備無法在系統(tǒng)中識別。解決方法是開啟與USB設備相關的選項。就是開機按F2或DEL鍵,進入BIOS,把enableusbdevice選擇enable。拔插要小心,讀寫時千萬不可拔出,不然有可能燒毀芯片。XP中任務欄中多出USB設備的圖標,打開該圖標就會在列表中顯示U盤設備,選擇將該設備停用,然后你再拔出設備,這樣會比較安全。
其實判斷軟件硬件問題很簡單,在別的機器或換個系統(tǒng)試試就可以了.有些小的問題不妨先用專門軟件格式化下.還有提醒大家WINDOWS下格式化時要選擇FAT,不要選FAT32。
提示無法識別的USB設備維修
故障提示如圖:
無法識別的USB設備:UnknownUSBDevice.很多人都遇到過的一個問題,所謂“無法識別”對于操作系統(tǒng)來說,或者是驅動程度有問題,或者是USB設備出現(xiàn)了問題,或者是計算機與USB設備連接出現(xiàn)了故障,解決問題的方法也是從這幾處著手。
對于不同的設備會有不同的處理方法,了解USB設備正常工作需要的條件以及一些可能影響USB設備正常工作的因素,會有助于解決問題。
下面是保證USB設備可以正常工作的一些條件:(1)USB設備本身沒有任何問題——可以通過在其它計算機上進行測試,保證能正常工作;(2)USB接口沒有任何問題——可以通過連接其它的USB設備在此接口上進行測試;(3)USB設備的驅動程序已經正確安裝,如果有詳細說明書的USB設備,一定要仔細查看相應的說明文件,按照說明安裝相應的驅動程序;Windows2000以后的操作系統(tǒng)以識別大部分的USB設備,Windows98以前的操作系統(tǒng)可以安裝USB設備自帶的驅動或者安裝通用的USB設備驅動程序。下面是可能影響USB設備正常工作的一些情形:(1)USB設備已經出現(xiàn)了故障(同樣的條件以前可以正常使用,現(xiàn)在出現(xiàn)了問題);(2)USB接口有問題,比如a.USB前置接口極性接反,這可能導致USB設備燒毀,所以一定要仔細看一下主板說明書,防止接錯;b.接口電壓不足,一些<ahref=".com/mobileharddisk">移動硬盤</a>常會有這樣的問題,主機后面的USB接口往往會比前置USB接口更可靠一些;c.主板與操作系統(tǒng)兼容性有問題,安裝最新的主板驅動程序可以最大程度地避免此類問題;d.Bios中禁止了USB設備,可能通過更改BIOS中相應的設置來解決;e.操作系統(tǒng)問題,可以通過重裝操作系統(tǒng)來解決;(3)USB驅動程序有問題:如果懷疑驅動有問題時,應當保
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025版委托持股業(yè)務盡職調查與合規(guī)性管理合同3篇
- 2025版新能源車輛制造股東入股協(xié)議書3篇
- 2025年度綠色建筑暖通工程設計施工一體化合同4篇
- 二零二五年度采光節(jié)能門窗供應合同2篇
- 2025年度水利工程承包施工居間合同(二零二五年度)4篇
- 窗簾材質與節(jié)能環(huán)保的科技融合
- 二零二五年度塔吊租賃行業(yè)自律公約制定合同2篇
- 智能教育時代的家庭教育與發(fā)展新路徑
- 教育科技中嵌入式的交互式學習體驗優(yōu)化
- 二零二五年度白灰產業(yè)園區(qū)基礎設施建設項目合同3篇
- 醫(yī)院培訓課件:《如何撰寫護理科研標書》
- 員工宿舍用電安全培訓
- 家庭年度盤點模板
- 河南省鄭州市2023-2024學年高二上學期期末考試 數(shù)學 含答案
- 2024年北師大版八年級上冊全冊數(shù)學單元測試題含答案
- 江蘇省南京市第二十九中2025屆數(shù)學高二上期末學業(yè)質量監(jiān)測模擬試題含解析
- 八年級下學期期末考試語文試題(PDF版含答案)
- 2024年公需科目培訓考試題及答案
- (正式版)SH∕T 3541-2024 石油化工泵組施工及驗收規(guī)范
- 2024年江蘇鑫財國有資產運營有限公司招聘筆試沖刺題(帶答案解析)
- 2024年遼寧石化職業(yè)技術學院單招職業(yè)適應性測試題庫含答案
評論
0/150
提交評論