版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
基于Android平臺氣象軟件的設(shè)計與實現(xiàn)摘要在當今這個高速發(fā)展的信息時代,傳統(tǒng)互聯(lián)網(wǎng)已經(jīng)日趨成熟,而移動互聯(lián)網(wǎng)卻處于井噴式的爆發(fā)階段。隨著基于Android和iOS系統(tǒng)等智能手機操作系統(tǒng)的普及,智能手機為用戶提供著越來越便捷和人性化的互聯(lián)網(wǎng)服務(wù)。通過手機終端即可處理各種業(yè)務(wù),遠可遠程物聯(lián)關(guān)燈,近可查閱地圖天氣。因此,應(yīng)用軟件極其服務(wù)在智能手機上具有廣闊的開發(fā)空間。而當今主流的兩家智能手機系統(tǒng)平臺分別是由Android和iOS系統(tǒng)所占據(jù)。它們憑借其高智能化、交互性強、擴展性強、創(chuàng)新度高一舉將占據(jù)智能手機市場十幾年的塞班踢出歷史舞臺。也造就了移動互聯(lián)網(wǎng)的高速發(fā)展。因為蘋果和谷歌科技巨頭具有強大的技術(shù)實力背景,人性化的交互設(shè)計,高水平的設(shè)計規(guī)范,完善的服務(wù)終端。所以系統(tǒng)用戶激活數(shù)一直很高。而其中的Android所具有的開源開放特性使它具有良好的拓展性。深受各大手機產(chǎn)商的歡迎,因此Android占據(jù)著最多的市場份額。并且它具有方便的開發(fā)調(diào)試工具,開放的體系架構(gòu),成熟的多媒體和各大組件,較低的開發(fā)成本。這都深深地吸引著開發(fā)者們。本文設(shè)計就是在基于Android平臺,使用相關(guān)的開發(fā)工具,結(jié)合實際工作內(nèi)容,對氣象軟件應(yīng)用進行設(shè)計與實現(xiàn)。關(guān)鍵詞:API;Android;SQLite;氣象軟件;Java
DesignandimplementationofweathersoftwareBasedonAndroidAbstractToday’srapiddevelopmentoftheinformationage,TraditionalInternethasbecomingmature.AndmobileInternetisinthestageoftheoutbreakoftheblowout.AsbasedonAndroidandiOSsystemandsoontheproliferationofsmartphones,smartphonestoprovideuserswithmoreconvenientandhumanizedInternetservices.Candealwithallkindsofbusiness,throughamobileoperatorfararemoteobjecttoturnoffthelights,almostcanconsultweathermap.Therefore,theapplicationsoftwareisserviceonasmartphonehasabroaddevelopmentspace.Andtoday'smainstreamtwosmartphonesystemplatformaredominatedbyAndroidandiOS.Themwithitshighintelligent,interactivestrong,strongexpansibility,highinnovationdegreeofeverywilldominatethesmartphonemarketmorethantenyearsofsymbiankickedouthistorystage,alsocontributedtotherapiddevelopmentofmobileInternet.BecauseAppleandGoogleCompanytechnologygianthasstrongtechnicalstrengthbackground,humanizedinteractiondesign,highlevelofdesignspecifications,theconsummationserviceterminal.Sotheusersofthesystemhasbeenveryhighactivationnumber.AndwiththeassistanceoftheAndroidopensourceandopenfeaturesmakeithasgoodexpansibility.Heispopularwiththemajormobilephonemakers,sotheAndroidoccupyingmostofthemarket.Andithasaconvenientdevelopmentanddebuggingtools,anopenarchitecture,maturemultimediaandmajorcomponents,lowerdevelopmentcosts.Thisisdeeplyattractdevelopers.DesignisbasedontheAndroidplatform,thispaperusetherelevantdevelopmenttools,todesignandimplementationofmeteorologicalsoftwareapplication.Keywords:API;Android;SQLiteDatabase;Weathersoftware;Java緒論1.1研究背景與意義在現(xiàn)今信息化、智能化的時代,移動互聯(lián)網(wǎng)的地位日趨重要,3G、4G通信技術(shù)高速發(fā)展,不管是國內(nèi)的TD制式還是歐美的FDD制式,3G、4G通信技術(shù)在移動互聯(lián)網(wǎng)的發(fā)展歷程中具有重要的意義,是一塊不可替代的基石?,F(xiàn)在只需輕輕一點,便可通過小小的手機終端享受到高效且方便的網(wǎng)絡(luò)服務(wù)。在2014年的臺灣資策會FIND的“臺灣最受歡迎的20大應(yīng)用“調(diào)查報告中,在社交類和娛樂類之后就是天氣類,而這排名并不僅僅是臺灣,相信在國內(nèi)和國外的應(yīng)用排行中,天氣類的應(yīng)用軟件都會有一席之地,因為現(xiàn)在的氣象信息可以十分精準的預測出當天的氣候狀態(tài),這種提前預警的好處,可以把氣象災害造成的損失降到最低。而這些服務(wù)只需通過手機輕輕一點即可實現(xiàn)。所以天氣類的應(yīng)用軟件無論是在哪個手機系統(tǒng)平臺上,滲透率都是非常之高的。隨著各類應(yīng)用軟件的百花齊放,在當前巨大的移動互聯(lián)網(wǎng)背景下,應(yīng)用軟件的格局和開發(fā)者的盈利模式逐漸有清晰的輪廓。就目前手機應(yīng)用程序的盈利手段來說,移動廣告是十分重要的盈利手段。在滲透率高的應(yīng)用上嵌入廣告SDK的話,可以賺取到一定的點擊量和展示量,因此,一些分發(fā)平臺為了幫助自己的廣告業(yè)務(wù)跑量,也會選擇開發(fā)一些實用的應(yīng)用嵌入自己的SDK。而氣象軟件是相對比較新穎且實用的一款應(yīng)用軟件。因此選擇了基于Android平臺氣象軟件的設(shè)計與實現(xiàn)。1.2研究現(xiàn)狀和發(fā)展趨勢基于Android平臺開發(fā)氣象軟件應(yīng)用,首先Android具有基于自己不同于別人的優(yōu)勢與特點。第一,他具有強大的開放性。眾說周知,Android是一個開源的操作系統(tǒng),因為Android平臺基于BSD協(xié)議。而BSD協(xié)議鼓勵軟件開發(fā)作者公開后續(xù)其開發(fā)的源代碼,但它并不具有強迫性,因此使用者修改代碼之后,可以自行決定是否按照BSD協(xié)議進行公開。這樣使得Android一邊具有其開放性而另一邊又可適用于商業(yè)開發(fā)。第二點優(yōu)勢是硬件跨平臺,因為Android具有的開放性,各大廠商選擇Android作為自己手機的原生操作系統(tǒng),因此同一種系統(tǒng)軟件背后是多個廠商的多種硬件所支撐。通過將系統(tǒng)深度定制,來達到個性化的極致,以此吸引廣大消費者,搶占市場份額。第三點是并行運行模式。Android是一個支持多任務(wù)操作系統(tǒng)的平臺,后臺可通過服務(wù)掛起,應(yīng)用之間彼此不會互相影響,只要后臺掛著,你可以一邊下載,一邊聽歌,一邊玩游戲,相信在不久的將來,Android手機會發(fā)展到和PC操作系統(tǒng)一樣,可以分為多窗口工作模式,一個窗口看視頻,另外一個窗口玩游戲。最后一點就是非壟斷性。與蘋果公司的iOS系統(tǒng)和微軟公司的WindowsPhone相比,在Android平臺上,可以定制自己所獨有的東西,這對開發(fā)者具有極大的吸引力。而手機的應(yīng)用軟件就是手機操作系統(tǒng)的靈魂,可以說各式各樣的App造就了操作系統(tǒng)的豐富多彩,某些App軟件具有強大的用戶基數(shù)和穩(wěn)定的盈利模式,因此在現(xiàn)今移動互聯(lián)網(wǎng)格局戰(zhàn)略發(fā)展下,基于Android平臺開發(fā)的應(yīng)用軟件是移動互聯(lián)網(wǎng)攻城掠地的第一城。1.3SQLite數(shù)據(jù)庫簡介數(shù)據(jù)庫是程序進行數(shù)據(jù)管理的重要技術(shù),現(xiàn)今信息資源的管理與存儲是愈加復雜、同時也愈加重要,而數(shù)據(jù)庫卻在對信息資源的管理和存儲中充當著至關(guān)重要的角色。而對于Android手機這種智能終端來說,自然也需要數(shù)據(jù)庫對其信息資源進行管理和存儲,Android搭載著一款輕型的SQLite數(shù)據(jù)庫,它是遵守ACID的嵌入式關(guān)系型數(shù)據(jù)庫管理系統(tǒng)。它是以嵌入式為設(shè)計目標的,而且目前已經(jīng)在很多嵌入式產(chǎn)品中使用了它,它的特點是高度便攜、使用方便、結(jié)構(gòu)緊湊、高效、可靠。它能夠支持Windows/Linux/Unix等主流的操作系統(tǒng)的同時也能夠跟很多程序語言相結(jié)合。1.4開發(fā)環(huán)境簡介Android的系統(tǒng)架構(gòu)可以大致可以分為四層架構(gòu),五塊區(qū)域。最底層也是最基礎(chǔ)的一層是Linux內(nèi)核層:Android系統(tǒng)是基于開源的Linux2.6內(nèi)核開發(fā)的,這一層是為Android設(shè)備的各種硬件提供了底層支持驅(qū)動,比如用于屏幕顯示的顯示驅(qū)動、用于多媒體播放的音頻驅(qū)動、用于拍照攝影的照相機驅(qū)動,以及藍牙、Wi-Fi驅(qū)動等。接著是系統(tǒng)運行庫層:Android系統(tǒng)所需要的特性支持都是由這一層的一些C/C++語言編寫的庫所提供的。比如數(shù)據(jù)庫是由SQLite所提供支持的,3D繪圖是由OpenGL|ES庫提供了支持,瀏覽器內(nèi)核是由WebKit庫提供了支持等。還有就是Dalvik虛擬機包含在了Android運行時庫中。Dalvik虛擬機使得每一個Android應(yīng)用都能夠運行在獨立的進程中并且擁有一個自己的Dalvik實例。不同于Java虛擬機,Dalvik是為移動設(shè)備專門量身定制的,它可以在手機內(nèi)存、CPU性能有限等情況下。進行專門的優(yōu)化處理。接著是應(yīng)用框架層:這一層是為開發(fā)者和Android自帶的一些核心應(yīng)用提供了構(gòu)建程序時需要用到的各種API。然后是最頂層的應(yīng)用層:所有安裝在手機上的應(yīng)用程序都是屬于這一層,比如微信,系統(tǒng)自帶的短信還有游戲都是屬于這層,這層是用Java語言編寫的。由于Android應(yīng)用層的應(yīng)用程序都是Java語言編寫的,所以開發(fā)環(huán)境需要JavaSDK以及Google提供的AndroidSDK,而開發(fā)工具就有Eclipse搭載ADT插件和剛興起不久的Androidstudio。此程序是用Eclipse開發(fā)的,因此只介紹Eclipse。準備好以上提到的SDK和程序,再配置環(huán)境變量,便可進行開發(fā)了。1.4.1Java概述Java是目前全世界最流行的面向?qū)ο缶幊陶Z言。與它類似的程序設(shè)計語言有C#、python和Ruby,它們在某些領(lǐng)域都有自己的特點和優(yōu)勢,所以彼此都是處于競爭者的狀態(tài)。Java語言是一種較為特殊的高級語言,因為Java程序要經(jīng)歷先編譯、后解釋兩個步驟。所以Java既有解釋性語言的特征,也有編譯性語言的特征。Java有三個分支,分別為JavaSE、JavaME、JavaEE。其中JavaEE企業(yè)級主要是用于Web的開發(fā),比如JSP、Servlet、EJB等都屬于JavaEE的范疇。由于Java的安全、穩(wěn)定,這使得JavaEE不僅在大型網(wǎng)站的架構(gòu)上十分適用,在銀行和基金證券等金融行業(yè)也是備受青睞。還有就是JavaME移動設(shè)備,它是專門為機頂盒、移動電話和PDA之類的嵌入式消費電子設(shè)備提供的Java語言平臺。最后是JavaSE標準版,它是JavaEE和JavaME的基礎(chǔ),核心語言都在JavaSE中體現(xiàn),最先開始學習就是學JavaSE,它主要用于桌面應(yīng)用開發(fā)。1.4.2Eclipse+ADT概述是Java開發(fā)中最好用、最流行的IDE工具之一。而且它還是開源的,這使得MyEclipse和Aptana這些基于Eclipse制作出來的優(yōu)秀IDE得以成功問世。但它吸引眾多開發(fā)者的地方還不止于此,Eclipse它具有超強大的插件功能。因為它可以支持非常多的插件工具,使得它不僅可以用來開發(fā)Java,還可以非常輕松地支持幾乎所有主流語言的開發(fā),當然也非常適合Android開發(fā)。ADT全稱是AndroidDevelopmentTools,是谷歌提供的一個Eclipse插件,用戶在Eclipse中提供一個強大的、高度集成的Android開發(fā)環(huán)境。安裝ADT插件,就可以實現(xiàn)聯(lián)機調(diào)試,而且還能夠模擬各種手機事件、分析你的程序性能等眾多便捷的功能。2需求分析2.1研究目的主要是為了學習Android應(yīng)用程序的設(shè)計與開發(fā),往安卓工程師的職位發(fā)展,配合公司跑量業(yè)務(wù)進行研究與學習。利用組件對氣象軟件進行開發(fā),通過項目實踐,將書本中學習到的知識運用起來,對知識點進行更加深刻的總結(jié)歸納。2.2系統(tǒng)需求基于Android平臺的氣象軟件,主要強調(diào)的就是便捷性,一般人們在準備出門的時候會提前看一下天氣預報,根據(jù)氣溫提示考慮如何著裝以及是否帶傘等問題。此時便有以下幾點要求,第一、需要有便捷的查詢功能,最簡潔的提供資訊,直觀的收到我所需要了解的天氣信息即可。第二、需要準確的天氣信息,因此需要著重考慮天氣API接口。第三、信息要實時更新,所以后臺服務(wù)要按照一定的時間間隔,從服務(wù)器上獲取信息。并且提供手動更新,獲取實時天氣信息。2.3需求分析根據(jù)系統(tǒng)分析,Android氣象軟件要求如下:軟件可羅列出全國所有省、市、縣。軟件可查看全國的任意所選城市天氣信息。軟件可定位出你當前所在地理信息位置。軟件可自由切換全國各大城市以及查看它的天氣信息。軟件可提供手動更新功能以及后臺自動更新天氣信息的功能。程序響應(yīng)速度快,獲取后臺信息快速無延誤,安全性高。2.4功能分析圖下圖是氣象軟件的功能分析圖圖2-1系統(tǒng)功能分析圖3總體設(shè)計3.1用戶界面設(shè)計根據(jù)需求分析可知道,首先用戶點擊進入應(yīng)用程序時,系統(tǒng)會獲取服務(wù)器上返回的文本信息,用程序處理完之后再進行適配ListView便可獲得初始界面,用初始界面進行初始化就可以到主界面了。設(shè)計初衷就是為了簡潔明了,一目了然。設(shè)計出來的界面草圖如下所示。圖3-1初始化界面設(shè)計草圖圖3-2主界面設(shè)計草圖3.2總體功能設(shè)計3.2.1模塊設(shè)計功能模塊設(shè)計總體分為4部分,分別是活動啟動,后臺Service服務(wù),用戶界面以及數(shù)據(jù)庫,模塊包名如下圖所示:活動啟動:活動是Android程序的門面,在應(yīng)用中所看到的東西,都是活動,它與用戶交互最直接的組件。它有四種啟動模式,分別是Standard、singleTop、singleTask還有SingleInstance。本程序是默認的Standard啟動模式。后臺Service:負責執(zhí)行那些不需要去和用戶交互而且還要求在系統(tǒng)中長期運行的任務(wù)。它并不依賴用戶界面,所以當程序切換到后臺,或者用戶直接打開另外一個應(yīng)用程序時,服務(wù)仍然能夠保持正常運行。適用于一些下載任務(wù)和自動后臺更新服務(wù),例如一定時間內(nèi)自動與服務(wù)器交互獲得氣象數(shù)據(jù)并且更新。用戶界面:由XML語言編寫的布局文件,布局文件中可以用許多系統(tǒng)自帶控件進行裝飾,也可以設(shè)置自定義控件,為了讓每個控件都有條不紊地擺放在界面上,我們需要設(shè)置相應(yīng)的布局來使控件按照布局的規(guī)則放置,常見的四種基本布局是LinearLayout、RelativeLayout、TableLayout、FrameLayout。本文初始化界面是用ListView,而主界面是用多重布局嵌套。圖3-3模塊包名圖Activity包主要用于存放所有與活動相關(guān)的代碼,包內(nèi)有ChooseAreaActivity類和WeatherActivity類,它們分別代表選擇天氣活動界面和顯示天氣主活動界面。db包則是用于存放數(shù)據(jù)庫相關(guān)的代碼,包內(nèi)有WeatherDB類,它負責省市縣三級聯(lián)動的數(shù)據(jù)存儲,還有一個建庫工具類OpenHelper。而model包主要用于存放所有數(shù)據(jù)模型相關(guān)的代碼,例如省模塊的Province類、市模塊的County類、縣模塊City類。Receiver包用于存放所有廣播接收器相關(guān)的代碼,service包用于存放和服務(wù)有關(guān)的代碼,包內(nèi)的AutoUpdateService主要用于服務(wù)后臺自動更新,使天氣信息可以在一定時間自動從服務(wù)器上獲取數(shù)據(jù)并且刷新。util包是工具包,用于存放工具類相關(guān)的代碼,主要有網(wǎng)絡(luò)連接服務(wù)的HttpUtil工具類還有HttpCallbackListener監(jiān)聽類。3.3數(shù)據(jù)庫設(shè)計3.3.1系統(tǒng)數(shù)據(jù)分析通過分析氣象API接口,知道氣象信息并不需要利用數(shù)據(jù)庫進行存儲,只需進行緩存就好。而真正我們需要處理的數(shù)據(jù)項就是建立Province、City、County三張表,分別存放省、市、縣的各種數(shù)據(jù)信息。3.4API接口分析當我們將手機上獲得的省市縣數(shù)據(jù)處理成城市代號并訪問相應(yīng)的地址時,中國氣象網(wǎng)會返回相應(yīng)的天氣代號,以下為部分城市天氣代號表的一部分:圖3-4城市天氣代號表當我們把經(jīng)過處理的天氣代號發(fā)送到查詢天氣接口時,服務(wù)器會把該城市的當前的天氣信息以JSON格式返回給我們,如下所示:{“weatherinfo”:{“city”:”浦東”,“cityid”:”101021300”,“temp1”:”21℃”,“temp2”:”9℃”,“weather”:”多云轉(zhuǎn)小雨”,“img1”:”d1.gif”,“img2”:”n7.gif”,“ptime”:”11:00”}}一下是可供參照的氣象編碼表和風力編碼表:圖3-5天氣現(xiàn)象編碼表圖3-6風力方向編碼表3.5數(shù)據(jù)字典3.5.1省級信息表描述:對省級基本信息的存儲,省級表的基本信息包括:自增長主鍵id,province_name、province_code。表3-1省級信息表列名數(shù)據(jù)類型可否為空屬性名稱說明idinteger否id自增長主鍵Province_nameText否Provincename/Province_codetext否Province_code/3.5.2市級信息表描述:對市級基本信息的存儲,省級表的基本信息包括:自增長主鍵id,city_name,city_code,province_id。表3-2市級信息表列名數(shù)據(jù)類型可否為空屬性名稱說明idInteger否Id自增長主鍵City_nameText否City_name/City_codetext否City_code/Province_idinteger否Province_id外鍵3.5.3縣級信息表描述:對縣級基本信息的存儲,省級表的基本信息包括:自增長主鍵id,county_name,county_code,city_id。表3-3縣級信息表列名數(shù)據(jù)類型可否為空屬性名稱說明IdInteger否Id自增長主鍵County_nameText否County_name/County_codetext否County_code/city_idinteger否city_id外鍵4設(shè)計思想與實現(xiàn)整個氣象軟件是我自己獨立設(shè)計完成的雖然簡單功能點并不多,技術(shù)要求也不高,但想實現(xiàn)卻需要用到UI、網(wǎng)絡(luò)、定位、數(shù)據(jù)存儲、服務(wù)等技術(shù),算是比較考驗綜合應(yīng)用能力。也算是重溫了基礎(chǔ)知識點和四大組件。4.1省市縣三級聯(lián)動模塊省界面如圖4.1:圖4-1省界面市界面如圖4.2:圖4-2市界面縣區(qū)界面如圖4.3:圖4-3省界面全國的省市縣數(shù)據(jù)都是從服務(wù)器端獲取到的,由于服務(wù)器返回的省市縣數(shù)據(jù)都是“代號|城市,代號|城市”這種格式,所以要需要進行解析處理。處理完后,就可以編寫界面,主要是通過ListView將省市縣數(shù)據(jù)顯示在其中。接著是配合適配器查詢省市縣,優(yōu)先從數(shù)據(jù)庫中查詢,沒有再從服務(wù)器端獲取,一般第一次初始化都是要從服務(wù)器端獲取。最后通過返回主線程進行UI控件處理就可以完成以上效果。4.2主界面模塊主界面如圖4-4:圖4-2主界面主界面的設(shè)計使用TextView來顯示數(shù)據(jù)信息,然后嵌套多層LinearLayout和RelativeLayout來控制TextView的顯示位置,達到圖4-2的效果。具體布局代碼如下所示:<?xmlversion="1.0"encoding="utf-8"?><LinearLayoutxmlns:android="/apk/res/android"android:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical"><RelativeLayoutandroid:layout_width="match_parent"android:layout_height="50dp"android:background="#484E61"><Buttonandroid:id="@+id/switch_city"android:layout_width="30dp"android:layout_height="30dp"android:layout_centerVertical="true"android:layout_marginLeft="10dp"android:background="@drawable/home"/><TextViewandroid:id="@+id/city_name"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_centerInParent="true"android:textColor="#fff"android:textSize="24sp"/><Buttonandroid:id="@+id/refresh_weather"android:layout_width="30dp"android:layout_height="30dp"android:layout_alignParentRight="true"android:layout_centerVertical="true"android:layout_marginRight="10dp"android:background="@drawable/refresh"/></RelativeLayout><RelativeLayoutandroid:layout_width="match_parent"android:layout_height="0dp"android:layout_weight="1"android:background="#27A5F9"><TextViewandroid:id="@+id/publish_text"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_alignParentRight="true"android:layout_marginRight="10dp"android:layout_marginTop="10dp"android:textColor="#FFF"android:textSize="18sp"/><LinearLayoutandroid:id="@+id/weather_info_layout"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_centerInParent="true"android:orientation="vertical"><TextViewandroid:id="@+id/current_date"android:layout_width="wrap_content"android:layout_height="40dp"android:gravity="center"android:textColor="#FFF"android:textSize="18sp"/><TextViewandroid:id="@+id/weather_desp"android:layout_width="wrap_content"android:layout_height="60dp"android:layout_gravity="center_horizontal"android:gravity="center"android:textColor="#FFF"android:textSize="40sp"/><LinearLayoutandroid:layout_width="wrap_content"android:layout_height="60dp"android:layout_gravity="center_horizontal"android:orientation="horizontal"><TextViewandroid:id="@+id/temp1"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_gravity="center_vertical"android:textColor="#FFF"android:textSize="40sp"/><TextViewandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_gravity="center_vertical"android:layout_marginLeft="10dp"android:layout_marginRight="10dp"android:text="~"android:textColor="#FFF"android:textSize="40sp"/><TextViewandroid:id="@+id/temp2"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_gravity="center_vertical"android:textColor="#FFF"android:textSize="40sp"/></LinearLayout></LinearLayout></RelativeLayout></LinearLayout>4.3后臺自動更新天氣后臺自動更新天氣可以使用戶每次打開軟件時看到的都是最新的天氣信息,要想實現(xiàn)這個功能,需要創(chuàng)建一個長期在后臺運行的定時任務(wù),這也是Android的優(yōu)勢之一,新建一個AutoUpdateService類繼承自Service類,重寫onBind和onStartCommand。在onStartCommand方法中開啟子線程,然后調(diào)用updateWeather方法更新天氣,再將氣象信息存在SharePreferences文件中,并且為了使軟件不會因為需要經(jīng)常訪問服務(wù)器而耗費額外的流量,所以我們要設(shè)置一定時間間隔,到特定時間時,就會啟動廣播去通知后臺更新天氣信息,這樣即可完成后臺天氣信息的自動更新了。具體代碼如下所示:packagecom.coolweather.app.service;importcom.coolweather.app.receiver.AutoUpdateReceiver;importcom.coolweather.app.util.HttpCallbackListener;importcom.coolweather.app.util.HttpUtil;importcom.coolweather.app.util.Utility;importandroid.app.AlarmManager;importandroid.app.PendingIntent;importandroid.app.Service;importandroid.content.Intent;importandroid.content.SharedPreferences;importandroid.os.IBinder;importandroid.os.SystemClock;importandroid.preference.PreferenceManager;importandroid.util.Log;基于單片機的GPS定位系統(tǒng)設(shè)計文獻綜述前言GPS衛(wèi)星導航定位技術(shù)于上世紀80年代末引入中國,目前主要在大地測量(測繪、勘探)、海上漁業(yè)和車輛定位監(jiān)控等領(lǐng)域得到了比較廣泛的應(yīng)用。在全球GPS應(yīng)用領(lǐng)域中,車輛應(yīng)用所占的比重最大,目前約占總數(shù)的40%以上。1996~1997年間是GPS車輛跟蹤系統(tǒng)市場的調(diào)整和充實時期。主要是公安、金融等部門利用其專用的常規(guī)無線電臺(異頻單工電臺)通信系統(tǒng)和模擬集群系統(tǒng),在全國三四十個城市建成了金融運鈔車和公安交警車輛跟蹤系統(tǒng)。1998~2000年GPS車輛跟蹤系統(tǒng)市場出現(xiàn)了快速增長的勢頭。隨著我國GSM數(shù)字移動通信系統(tǒng)的快速發(fā)展與全國普及,作為系統(tǒng)瓶頸問題的通信網(wǎng)絡(luò)通過采用GSM公眾網(wǎng)的短信息服務(wù)找到了新的出路,這對GPS車輛跟蹤系統(tǒng)的發(fā)展起極大的促進作用[3]。
我國現(xiàn)在擁有世界上最大潛力的衛(wèi)星導航應(yīng)用市場。經(jīng)過十多年的發(fā)展,我國的衛(wèi)星導航用戶設(shè)備市場化的條件日趨成熟,批量化用戶群體正在逐步形成,已進入應(yīng)用行業(yè)高速發(fā)展的時期。美國聯(lián)邦通信委員會規(guī)定,到2005年美國95%的用戶手機必須配有定位能力,2003年底前,95%的新手機有定位能力。而移動電話與GPS結(jié)合是最好的解決辦法。目前,國際上一些主流手機制造商如諾基亞、愛立信和三星等已開始使用集成的GPS芯片,而日本的日本電信電話移動通信網(wǎng)公司、KDDI和美國的Sprint、Verizon、網(wǎng)信公司等電信運營商也已開始或計劃提供基于GPS手機的位置服務(wù)[4]。1GPS定位研究的意義GPS(GlobalPositionSystem)是全球定位系統(tǒng),具有全天候、高精度的特點,伴隨著硬件配置的不斷提高,應(yīng)用領(lǐng)域也在不斷的擴展,并逐步深入到了人們的日常生活中。GPS已經(jīng)在經(jīng)濟、軍事、科研和社會生活各領(lǐng)域得到了廣泛應(yīng)用,發(fā)揮著重要的作用。如在導航領(lǐng)域的一項新技術(shù),GPS用衛(wèi)星定位的全球定位系統(tǒng)。GPS最初由美國政府控制使用,是目前世界上最具權(quán)威性的導航系統(tǒng)。它由30個(4作為備份星)在軌道上運行的衛(wèi)星。早期的GPS系統(tǒng)用來限制民用信號的,定位精度約100多米,在2000年的限制取消[2]。目前,GPS的民用信號的定位精度可以提供10多米。GPS可以在許多領(lǐng)域,如民用航空,車輛調(diào)度管理,整個陸地,海洋和空中導航范圍內(nèi)的深海運輸,特別是在車輛定位和導航領(lǐng)域中使用,GPS全球衛(wèi)星定位技術(shù)與了廣泛的應(yīng)用。隨著應(yīng)用領(lǐng)域的日益擴大,中國衛(wèi)星導航儀的市場規(guī)模已從2000年的不到10億元增長到了2009年的120億元。發(fā)現(xiàn)準確的目的地及周邊環(huán)境的LED的繁榮GPS導航產(chǎn)品市場需求。據(jù)有關(guān)統(tǒng)計,全國GPS導航設(shè)備普及率達到90%在歐美國家,日本更是超過95%。一個對3G應(yīng)用與創(chuàng)新的專業(yè)觀的調(diào)查顯示,百分之17.79的受訪者選擇了3G網(wǎng)絡(luò)視頻對話,百分之15.34的受訪者選擇了GPS和地圖搜索,在3G時代的到來,對GPS和電子地圖的關(guān)注,足以顯示其在日常生活中的重要性。此外,消費者和市場的需求也促進了航運業(yè)的發(fā)展和成熟。2009,中國的民用汽車保有量達到一億七千萬但是裝載導航設(shè)備的車輛,還不足70萬輛。盡管不少汽車廠家對其高端車型在出廠前就安裝了導航系統(tǒng),以低端車型也可選導航其它產(chǎn)品和服務(wù),但價格昂貴,車載導航系統(tǒng)(GPS以150000000美元花冠連線然后安裝價格有7000元,所以沒幾個人)買一輛汽車非常實用導航配置遺棄。按20%個私家車保有量的平均年增長率的估計,導航產(chǎn)品的要求是一個很大的增值。因此,研究和開發(fā)必要的GPS是適應(yīng)大眾的要求的[8]。2GPS定位國外市場的發(fā)展現(xiàn)狀與趨勢目前,以GPS為代表的衛(wèi)星導航應(yīng)用產(chǎn)業(yè)已成為當今國際公認的八大無線產(chǎn)業(yè)之一。隨著技術(shù)的進步、應(yīng)用需求的增加,GPS以全天候、高精度、自動化、高效率等顯著特點及其所獨具的定位導航、授時校頻、精密測量等多方面的強大功能,已涉足眾多的應(yīng)用領(lǐng)域,使GPS成為繼蜂窩移動通信和互聯(lián)網(wǎng)之后的全球第三個IT經(jīng)濟新增長點。1主要應(yīng)用領(lǐng)域
(1)民用領(lǐng)域
在定位導航方面,GPS的使用對象主要是汽車、船舶和飛機等運動物體。例如船舶遠洋導航和進港引水,飛機航路引導和進場降落,汽車自主導航定位,地面車輛跟蹤和城市智能交通管理等。此外,對于警察、消防及醫(yī)療等部門的緊急救援、追蹤目標和個人旅游及野外探險的導引等,GPS都具有得天獨厚的優(yōu)勢。在日常生活中,GPS還可用于人身受到攻擊危險時的報警,特殊病人、少年兒童的監(jiān)護與救助,生活中遇到各種困難時的求助等。使用時只需按動帶有移動位置服務(wù)的GPS手機按鈕,警務(wù)監(jiān)控中心和急救中心在幾秒鐘內(nèi)便可獲知報警人的位置并提供及時的救助[6]。目前國際上具有代表性的GPS公司,主推測量儀器的有天寶公司、徠卡公司、諾華達公司和佳瓦特公司等,主推導航設(shè)備和GPS
OEM板的有高明公司、麥哲倫公司、摩托羅拉公司、洛克韋爾公司和瑟孚科技公司等。(2)軍事領(lǐng)域
在軍事領(lǐng)域,GPS也已從當初的為軍艦、飛機、戰(zhàn)車、地面作戰(zhàn)人員等提供全天候、連續(xù)實時、高精度的定位導航,擴展到成為目前精確制導武器復合制導的一種重要技術(shù)手段。其工作原理是利用彈上安裝的GPS接收機接收4顆以上導航衛(wèi)星播發(fā)的信號來修正導彈的飛行路線,提高制導精度。區(qū)別于誤差較大、精度較低的民用標準定位服務(wù),軍方使用的是精密定位服務(wù)。資料顯示,未配置GPS制導系統(tǒng)之前,美軍的“戰(zhàn)斧”(BGM-109C)巡航導彈的圓概率誤差約為9米,在其慣性+地形匹配制導系統(tǒng)中加入GPS后,圓概率誤差降至3米,制導精度大大提高[5]。2全球GPS產(chǎn)業(yè)的結(jié)構(gòu)與現(xiàn)狀
GPS開始進入民用之后,使用者終端的GPS產(chǎn)品便成了當前GPS主要的市場內(nèi)容。一般來說,GPS的使用者終端主要是指各種用途的GPS接收機,例如用于航空和航海的接收機、汽車導航設(shè)備、用于登山和休閑的手持式接收機等類型的終端產(chǎn)品,而一般手持式GPS產(chǎn)品的組成部分,就如同移動電話或個人數(shù)字助理(PDA)的結(jié)構(gòu)一樣,也包括了內(nèi)部的天線、芯片組和電池等,以及外部的按鍵和LCD面板等相關(guān)零組件。目前全球GPS相關(guān)廠商的產(chǎn)品中又以GPS應(yīng)用產(chǎn)品與內(nèi)部的專用芯片組發(fā)展最受關(guān)注。截至去年,全球約有十余家生產(chǎn)GPS專用芯片的制造商,除了少數(shù)幾家是以GPS芯片為主要產(chǎn)品的制造商,如瑟孚科技公司,其它則多為以通信芯片為主的制造商,如飛利浦、摩托羅拉和科勝訊等。據(jù)估計,到2006年GPS芯片的全球市場值將達50億美元。從上世紀80年代初期第一個GPS商用產(chǎn)品出現(xiàn)至今,GPS產(chǎn)品重量從100磅(約為45千克)降為100克,而價格也從十幾萬美元降為現(xiàn)在的幾百美元。目前全球GPS應(yīng)用產(chǎn)品的制造商已超過30家以上,主要領(lǐng)導廠商有高明國際公司、麥哲倫公司和天寶導航有限公司等。
天寶公司以生產(chǎn)系統(tǒng)端的GPS產(chǎn)品為主,從軍用空軍流量控制系統(tǒng)到航空用雷達系統(tǒng)皆在其營運范圍之內(nèi)。近年來,該公司進一步結(jié)合了無線通信的定位技術(shù),例如與英飛凌公司合作開發(fā)用于無線通信系統(tǒng)端的First
GPS架構(gòu)與M-loc模塊,以期在無線定位設(shè)備市場中搶占先機[6]。3全球GPS市場狀況
隨著應(yīng)用范圍的擴展,GPS產(chǎn)品也逐漸成為全球無線通信終端市場一項重要的產(chǎn)品,推動GPS產(chǎn)品市場高度成長的主要因素是汽車導航系統(tǒng)和結(jié)合無線通信的GPS產(chǎn)品的普及化。根據(jù)市場研究公司ABI的報告,2001年,這兩類產(chǎn)品在GPS應(yīng)用產(chǎn)品市場的比率合計約為38.7%,到了2005年則將成長至53.6%,其它產(chǎn)品,如航空、航海、測量和農(nóng)業(yè)等合起來僅占46.4%。
不論是汽車導航系統(tǒng)或是GPS的通信應(yīng)用產(chǎn)品,主要的區(qū)域市場都是在美、歐、日等三個地區(qū)。以汽車導航系統(tǒng)為例,由于電子地圖與消費電子技術(shù)的高度發(fā)展,再加上智能型運輸系統(tǒng)的成熟,使得日本成為目前全球汽車導航系統(tǒng)普及率與市場值最高的國家。2000年日本的汽車導航系統(tǒng)銷售值約為670萬美元,占全球市場的77.9%,而歐洲與北美分別僅占13.9%與6.9%。不過2004年后,隨著汽車導航系統(tǒng)的日漸普及,歐洲與北美的市場將成長至710萬美元與590萬美元,各占市場比例的27%與22.5%,而日本市場則因為普及率高使成長率逐漸趨緩。
目前已經(jīng)推出整合無線通信與GPS解決方案的廠商有快速跟蹤公司(SnapTrack)、瑟孚科技、天寶公司等,其中,又以快速跟蹤公司與瑟孚科技兩家發(fā)展較為積極,且已有移動通信運營者或手機制造廠即將采用這兩家公司的解決方案。
成立于1995年的快速跟蹤公司是美國通信大廠高通公司的子公司,自成立以來即以GPS應(yīng)用于無線通信的技術(shù)為發(fā)展重點,目前快速跟蹤公司與高通公司合作采用結(jié)合手機端與系統(tǒng)端的混合式解決方案作為無線定位服務(wù)之用,在手機端部分,由內(nèi)建于手機中的高通公司MSM3300芯片組將GPS專用的LNA、SAW、LC
Filter以及GPS
One處理器等組件整合在一起,讓手機得以具備接收衛(wèi)星定位信號之功能,另一方面,則在系統(tǒng)端加裝快速跟蹤公司的MMASIC芯片組接收GPS信號,再由系統(tǒng)端發(fā)射定位信號至手機端[7],以解決多路信號衰減的問題。目前與該公司有合作關(guān)系的公司包括摩托羅拉、日本NEC、日本電信電話移動通信網(wǎng)公司(NTT
DoCoMo)和美國得州儀器公司等。
瑟孚科技公司無線定位技術(shù)的解決方案與快速跟蹤公司相似,也就是將其SiRFLoc架構(gòu)裝設(shè)在無線網(wǎng)絡(luò)系統(tǒng)端,讓無線基地臺可以接收與傳送衛(wèi)星定位資料,另一方面則是將其SiRFstar芯片組嵌入手機的基頻上,或是采用IP整合的方式將GPS接收機與手機芯片組整合為一。目前瑟孚科技公司在無線通信領(lǐng)域主要的合作伙伴有日本電信電話移動通信網(wǎng)公司、愛立信、諾基亞和信號軟件公司等。
雖然具有GPS定位功能的手機市場潛力頗為看好,就現(xiàn)階段而言仍有幾項障礙亟待克服:首先,不論手機采用的是內(nèi)建GPS芯片或是用外接GPS模塊作為解決方案,將無可避免地提高手機成本,也影響消費者購買的意愿;其次,GPS組件運作時將會大幅提高手機的耗電量;最后,目前具有提供整合GPS芯片與無線通信技術(shù)的公司仍屈指可數(shù),且手機制造大廠是否愿意采用現(xiàn)有的解決方案,或是另外自行開發(fā)仍是未定之數(shù)[1]。
通過近20年的發(fā)展,GPS產(chǎn)品已逐漸轉(zhuǎn)變?yōu)橄M電子產(chǎn)品,且所能應(yīng)用的范圍已擴展到日常生活中的通信、PDA、定位信息等。不過,以現(xiàn)階段來看,由于GPS接收機的單芯片化技術(shù)、價格以及市場應(yīng)用服務(wù)等仍未臻成熟,因此,在樂觀地看待此市場發(fā)展時,諸如GPS
IC設(shè)計的技術(shù)是否能達到手機或PDA所需的最小體積與耗電量、成本是否能降低以及內(nèi)建GPS的新手機是否能引起消費者的青睞等問題,仍必須審慎地深入評估。3GPS定位在我國發(fā)展趨勢隨著我國經(jīng)濟的不斷發(fā)展,特別是在加入WTO之后,完全可以相信,具有定位功能的GPS移動電話在中國將會有巨大的市場發(fā)展?jié)摿Γ瑤啄曛髮⒊杰囕v應(yīng)用,成為GPS應(yīng)用最大的領(lǐng)域?!奥?lián)通無限”其中有一個功能是“定位之星”,它基于GPS
One,可提供目前移動通信領(lǐng)域精度最高、最直觀的位置服務(wù),取代短信獲取位置信息的方式,用戶通過手機或網(wǎng)上地圖可實現(xiàn)精確到5米的定位。有了這個功能,從交警維持交通安全、公安破案、物流的傳輸?shù)匠鲎馑緳C及時地掌握交通情況,甚至孩子迷失或家人晚歸,都可以利用GPS
One提供的正確位置信息,獲得其所在位置,極大地提高工作效率,為生活帶來便捷。
“定位之星”通過衛(wèi)星傳輸信息,并經(jīng)過中國聯(lián)通GPS
One服務(wù)器,發(fā)送到用戶手機上。一旦將GPS與無線通信和互聯(lián)網(wǎng)結(jié)合起來,消費市場更將蓬勃發(fā)展。特別是便宜實用、能進入家庭以及與個人關(guān)系密切的商品在中國將會有市場,并大有可為。這方面的典型應(yīng)用不少,如PDA、個人定位產(chǎn)品(如尋人器、引路儀、急救報警等)以及貴重物品追蹤器和氣象探空儀等[7]。國內(nèi)GPS市場呈現(xiàn)出兩個重點發(fā)展趨勢。
(1)以車載導航為核心的移動目標監(jiān)控、管理與服務(wù)系統(tǒng)。
在GPS應(yīng)用領(lǐng)域,車輛應(yīng)用所占的比例較大。最初GPS車輛應(yīng)用一般分為車輛跟蹤和車輛導航兩大系統(tǒng)。但當摩托羅拉公司推出集車輛導航與跟蹤于一體的車輛信息系統(tǒng)后,它就成了發(fā)展的方向。
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度生態(tài)保護區(qū)承包商安全環(huán)保協(xié)議3篇
- 2025年度地下車庫租賃及停車誘導系統(tǒng)合作協(xié)議4篇
- 2025年度船舶維修配件生產(chǎn)與銷售協(xié)議4篇
- 二零二五年度害蟲防治項目后期維護合同4篇
- 2025年度大型儲油罐項目投資合作協(xié)議4篇
- 2025年度智能交通系統(tǒng)監(jiān)理服務(wù)承包合同4篇
- 二零二五版閉門會議與會人員保密義務(wù)合同3篇
- 2025年度服裝服飾配送與銷售服務(wù)合同4篇
- 2025年昆山法院判決:退物業(yè)費標準及執(zhí)行合同范本3篇
- 樣板間裝修工程2025版維護保養(yǎng)合同2篇
- 漆畫漆藝 第三章
- CB/T 615-1995船底吸入格柵
- 光伏逆變器一課件
- 貨物供應(yīng)、運輸、包裝說明方案
- (完整版)英語高頻詞匯800詞
- 《基礎(chǔ)馬來語》課程標準(高職)
- IEC61850研討交流之四-服務(wù)影射
- 《兒科學》新生兒窒息課件
- 材料力學壓桿穩(wěn)定
- 人教版小升初英語知識點匯總
- 靜態(tài)爆破專項施工方案
評論
0/150
提交評論