版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
PAGEPAGEI基于Android平臺(tái)氣象軟件的設(shè)計(jì)與實(shí)現(xiàn)摘要在當(dāng)今這個(gè)高速發(fā)展的信息時(shí)代,傳統(tǒng)互聯(lián)網(wǎng)已經(jīng)日趨成熟,而移動(dòng)互聯(lián)網(wǎng)卻處于井噴式的爆發(fā)階段。隨著基于Android和iOS系統(tǒng)等智能操作系統(tǒng)的普及,智能為用戶提供著越來(lái)越便捷和人性化的互聯(lián)網(wǎng)服務(wù)。通過(guò)終端即可處理各種業(yè)務(wù),遠(yuǎn)可遠(yuǎn)程物聯(lián)關(guān)燈,近可查閱地圖天氣。因此,應(yīng)用軟件極其服務(wù)在智能上具有廣闊的開發(fā)空間。而當(dāng)今主流的兩家智能系統(tǒng)平臺(tái)分別是由Android和iOS系統(tǒng)所占據(jù)。它們憑借其高智能化、交互性強(qiáng)、擴(kuò)展性強(qiáng)、創(chuàng)新度高一舉將占據(jù)智能市場(chǎng)十幾年的塞班踢出歷史舞臺(tái)。也造就了移動(dòng)互聯(lián)網(wǎng)的高速發(fā)展。因?yàn)樘O果和谷歌科技巨頭具有強(qiáng)大的技術(shù)實(shí)力背景,人性化的交互設(shè)計(jì),高水平的設(shè)計(jì)規(guī)范,完善的服務(wù)終端。所以系統(tǒng)用戶激活數(shù)一直很高。而其中的Android所具有的開源開放特性使它具有良好的拓展性。深受各大產(chǎn)商的歡迎,因此Android占據(jù)著最多的市場(chǎng)份額。并且它具有方便的開發(fā)調(diào)試工具,開放的體系架構(gòu),成熟的多媒體和各大組件,較低的開發(fā)成本。這都深深地吸引著開發(fā)者們。本文設(shè)計(jì)就是在基于Android平臺(tái),使用相關(guān)的開發(fā)工具,結(jié)合實(shí)際工作內(nèi)容,對(duì)氣象軟件應(yīng)用進(jìn)行設(shè)計(jì)與實(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;Java1緒論1.1研究背景與意義在現(xiàn)今信息化、智能化的時(shí)代,移動(dòng)互聯(lián)網(wǎng)的地位日趨重要,3G、4G通信技術(shù)高速發(fā)展,不管是國(guó)內(nèi)的TD制式還是歐美的FDD制式,3G、4G通信技術(shù)在移動(dòng)互聯(lián)網(wǎng)的發(fā)展歷程中具有重要的意義,是一塊不可替代的基石?,F(xiàn)在只需輕輕一點(diǎn),便可通過(guò)小小的終端享受到高效且方便的網(wǎng)絡(luò)服務(wù)。在2021年的臺(tái)灣資策會(huì)FIND的“臺(tái)灣最受歡迎的20大應(yīng)用“調(diào)查報(bào)告中,在社交類和娛樂類之后就是天氣類,而這排名并不僅僅是臺(tái)灣,相信在國(guó)內(nèi)和國(guó)外的應(yīng)用排行中,天氣類的應(yīng)用軟件都會(huì)有一席之地,因?yàn)楝F(xiàn)在的氣象信息可以十分精準(zhǔn)的預(yù)測(cè)出當(dāng)天的氣候狀態(tài),這種提前預(yù)警的好處,可以把氣象災(zāi)害造成的損失降到最低。而這些服務(wù)只需通過(guò)輕輕一點(diǎn)即可實(shí)現(xiàn)。所以天氣類的應(yīng)用軟件無(wú)論是在哪個(gè)系統(tǒng)平臺(tái)上,滲透率都是非常之高的。隨著各類應(yīng)用軟件的百花齊放,在當(dāng)前巨大的移動(dòng)互聯(lián)網(wǎng)背景下,應(yīng)用軟件的格局和開發(fā)者的盈利模式逐漸有清晰的輪廓。就目前應(yīng)用程序的盈利手段來(lái)說(shuō),移動(dòng)廣告是十分重要的盈利手段。在滲透率高的應(yīng)用上嵌入廣告SDK的話,可以賺取到一定的點(diǎn)擊量和展示量,因此,一些分發(fā)平臺(tái)為了幫助自己的廣告業(yè)務(wù)跑量,也會(huì)選擇開發(fā)一些實(shí)用的應(yīng)用嵌入自己的SDK。而氣象軟件是相對(duì)比較新穎且實(shí)用的一款應(yīng)用軟件。因此選擇了基于Android平臺(tái)氣象軟件的設(shè)計(jì)與實(shí)現(xiàn)。1.2研究現(xiàn)狀和發(fā)展趨勢(shì)基于Android平臺(tái)開發(fā)氣象軟件應(yīng)用,首先Android具有基于自己不同于別人的優(yōu)勢(shì)與特點(diǎn)。第一,他具有強(qiáng)大的開放性。眾說(shuō)周知,Android是一個(gè)開源的操作系統(tǒng),因?yàn)锳ndroid平臺(tái)基于BSD協(xié)議。而BSD協(xié)議鼓勵(lì)軟件開發(fā)作者公開后續(xù)其開發(fā)的源代碼,但它并不具有強(qiáng)迫性,因此使用者修改代碼之后,可以自行決定是否按照BSD協(xié)議進(jìn)行公開。這樣使得Android一邊具有其開放性而另一邊又可適用于商業(yè)開發(fā)。第二點(diǎn)優(yōu)勢(shì)是硬件跨平臺(tái),因?yàn)锳ndroid具有的開放性,各大廠商選擇Android作為自己的原生操作系統(tǒng),因此同一種系統(tǒng)軟件背后是多個(gè)廠商的多種硬件所支撐。通過(guò)將系統(tǒng)深度定制,來(lái)達(dá)到個(gè)性化的極致,以此吸引廣大消費(fèi)者,搶占市場(chǎng)份額。第三點(diǎn)是并行運(yùn)行模式。Android是一個(gè)支持多任務(wù)操作系統(tǒng)的平臺(tái),后臺(tái)可通過(guò)服務(wù)掛起,應(yīng)用之間彼此不會(huì)互相影響,只要后臺(tái)掛著,你可以一邊下載,一邊聽歌,一邊玩游戲,相信在不久的將來(lái),Android會(huì)發(fā)展到和PC操作系統(tǒng)一樣,可以分為多窗口工作模式,一個(gè)窗口看視頻,另外一個(gè)窗口玩游戲。最后一點(diǎn)就是非壟斷性。與蘋果公司的iOS系統(tǒng)和微軟公司的WindowsPhone相比,在Android平臺(tái)上,可以定制自己所獨(dú)有的東西,這對(duì)開發(fā)者具有極大的吸引力。而的應(yīng)用軟件就是操作系統(tǒng)的靈魂,可以說(shuō)各式各樣的App造就了操作系統(tǒng)的豐富多彩,某些App軟件具有強(qiáng)大的用戶基數(shù)和穩(wěn)定的盈利模式,因此在現(xiàn)今移動(dòng)互聯(lián)網(wǎng)格局戰(zhàn)略發(fā)展下,基于Android平臺(tái)開發(fā)的應(yīng)用軟件是移動(dòng)互聯(lián)網(wǎng)攻城掠地的第一城。1.3SQLite數(shù)據(jù)庫(kù)簡(jiǎn)介數(shù)據(jù)庫(kù)是程序進(jìn)行數(shù)據(jù)管理的重要技術(shù),現(xiàn)今信息資源的管理與存儲(chǔ)是愈加復(fù)雜、同時(shí)也愈加重要,而數(shù)據(jù)庫(kù)卻在對(duì)信息資源的管理和存儲(chǔ)中充當(dāng)著至關(guān)重要的角色。而對(duì)于Android這種智能終端來(lái)說(shuō),自然也需要數(shù)據(jù)庫(kù)對(duì)其信息資源進(jìn)行管理和存儲(chǔ),Android搭載著一款輕型的SQLite數(shù)據(jù)庫(kù),它是遵守ACID的嵌入式關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng)。它是以嵌入式為設(shè)計(jì)目標(biāo)的,而且目前已經(jīng)在很多嵌入式產(chǎn)品中使用了它,它的特點(diǎn)是高度便攜、使用方便、結(jié)構(gòu)緊湊、高效、可靠。它能夠支持Windows/Linux/Unix等主流的操作系統(tǒng)的同時(shí)也能夠跟很多程序語(yǔ)言相結(jié)合。1.4開發(fā)環(huán)境簡(jiǎn)介Android的系統(tǒng)架構(gòu)可以大致可以分為四層架構(gòu),五塊區(qū)域。最底層也是最基礎(chǔ)的一層是Linux內(nèi)核層:Android系統(tǒng)是基于開源的Linux2.6內(nèi)核開發(fā)的,這一層是為Android設(shè)備的各種硬件提供了底層支持驅(qū)動(dòng),比如用于屏幕顯示的顯示驅(qū)動(dòng)、用于多媒體播放的音頻驅(qū)動(dòng)、用于拍照攝影的照相機(jī)驅(qū)動(dòng),以及藍(lán)牙、Wi-Fi驅(qū)動(dòng)等。接著是系統(tǒng)運(yùn)行庫(kù)層:Android系統(tǒng)所需要的特性支持都是由這一層的一些C/C++語(yǔ)言編寫的庫(kù)所提供的。比如數(shù)據(jù)庫(kù)是由SQLite所提供支持的,3D繪圖是由OpenGL|ES庫(kù)提供了支持,瀏覽器內(nèi)核是由WebKit庫(kù)提供了支持等。還有就是Dalvik虛擬機(jī)包含在了Android運(yùn)行時(shí)庫(kù)中。Dalvik虛擬機(jī)使得每一個(gè)Android應(yīng)用都能夠運(yùn)行在獨(dú)立的進(jìn)程中并且擁有一個(gè)自己的Dalvik實(shí)例。不同于Java虛擬機(jī),Dalvik是為移動(dòng)設(shè)備專門量身定制的,它可以在內(nèi)存、CPU性能有限等情況下。進(jìn)行專門的優(yōu)化處理。接著是應(yīng)用框架層:這一層是為開發(fā)者和Android自帶的一些核心應(yīng)用提供了構(gòu)建程序時(shí)需要用到的各種API。然后是最頂層的應(yīng)用層:所有安裝在上的應(yīng)用程序都是屬于這一層,比如微信,系統(tǒng)自帶的短信還有游戲都是屬于這層,這層是用Java語(yǔ)言編寫的。由于Android應(yīng)用層的應(yīng)用程序都是Java語(yǔ)言編寫的,所以開發(fā)環(huán)境需要JavaSDK以及Google提供的AndroidSDK,而開發(fā)工具就有Eclipse搭載ADT插件和剛興起不久的Androidstudio。此程序是用Eclipse開發(fā)的,因此只介紹Eclipse。準(zhǔn)備好以上提到的SDK和程序,再配置環(huán)境變量,便可進(jìn)行開發(fā)了。1.4.1Java概述Java是目前全世界最流行的面向?qū)ο缶幊陶Z(yǔ)言。與它類似的程序設(shè)計(jì)語(yǔ)言有C#、python和Ruby,它們?cè)谀承╊I(lǐng)域都有自己的特點(diǎn)和優(yōu)勢(shì),所以彼此都是處于競(jìng)爭(zhēng)者的狀態(tài)。Java語(yǔ)言是一種較為特殊的高級(jí)語(yǔ)言,因?yàn)镴ava程序要經(jīng)歷先編譯、后解釋兩個(gè)步驟。所以Java既有解釋性語(yǔ)言的特征,也有編譯性語(yǔ)言的特征。Java有三個(gè)分支,分別為JavaSE、JavaME、JavaEE。其中JavaEE企業(yè)級(jí)主要是用于Web的開發(fā),比如JSP、Servlet、EJB等都屬于JavaEE的范疇。由于Java的安全、穩(wěn)定,這使得JavaEE不僅在大型網(wǎng)站的架構(gòu)上十分適用,在銀行和基金證券等金融行業(yè)也是備受青睞。還有就是JavaME移動(dòng)設(shè)備,它是專門為機(jī)頂盒、移動(dòng)和PDA之類的嵌入式消費(fèi)電子設(shè)備提供的Java語(yǔ)言平臺(tái)。最后是JavaSE標(biāo)準(zhǔn)版,它是JavaEE和JavaME的基礎(chǔ),核心語(yǔ)言都在JavaSE中體現(xiàn),最先開始學(xué)習(xí)就是學(xué)JavaSE,它主要用于桌面應(yīng)用開發(fā)。1.4.2Eclipse+ADT概述是Java開發(fā)中最好用、最流行的IDE工具之一。而且它還是開源的,這使得MyEclipse和Aptana這些基于Eclipse制作出來(lái)的優(yōu)秀IDE得以成功問(wèn)世。但它吸引眾多開發(fā)者的地方還不止于此,Eclipse它具有超強(qiáng)大的插件功能。因?yàn)樗梢灾С址浅6嗟牟寮ぞ?,使得它不僅可以用來(lái)開發(fā)Java,還可以非常輕松地支持幾乎所有主流語(yǔ)言的開發(fā),當(dāng)然也非常適合Android開發(fā)。ADT全稱是AndroidDevelopmentTools,是谷歌提供的一個(gè)Eclipse插件,用戶在Eclipse中提供一個(gè)強(qiáng)大的、高度集成的Android開發(fā)環(huán)境。安裝ADT插件,就可以實(shí)現(xiàn)聯(lián)機(jī)調(diào)試,而且還能夠模擬各種事件、分析你的程序性能等眾多便捷的功能。2需求分析2.1研究目的主要是為了學(xué)習(xí)Android應(yīng)用程序的設(shè)計(jì)與開發(fā),往安卓工程師的職位發(fā)展,配合公司跑量業(yè)務(wù)進(jìn)行研究與學(xué)習(xí)。利用組件對(duì)氣象軟件進(jìn)行開發(fā),通過(guò)項(xiàng)目實(shí)踐,將書本中學(xué)習(xí)到的知識(shí)運(yùn)用起來(lái),對(duì)知識(shí)點(diǎn)進(jìn)行更加深刻的總結(jié)歸納。2.2系統(tǒng)需求基于Android平臺(tái)的氣象軟件,主要強(qiáng)調(diào)的就是便捷性,一般人們?cè)跍?zhǔn)備出門的時(shí)候會(huì)提前看一下天氣預(yù)報(bào),根據(jù)氣溫提示考慮如何著裝以及是否帶傘等問(wèn)題。此時(shí)便有以下幾點(diǎn)要求,第一、需要有便捷的查詢功能,最簡(jiǎn)潔的提供資訊,直觀的收到我所需要了解的天氣信息即可。第二、需要準(zhǔn)確的天氣信息,因此需要著重考慮天氣API接口。第三、信息要實(shí)時(shí)更新,所以后臺(tái)服務(wù)要按照一定的時(shí)間間隔,從服務(wù)器上獲取信息。并且提供手動(dòng)更新,獲取實(shí)時(shí)天氣信息。2.3需求分析根據(jù)系統(tǒng)分析,Android氣象軟件要求如下:軟件可羅列出全國(guó)所有省、市、縣。軟件可查看全國(guó)的任意所選城市天氣信息。軟件可定位出你當(dāng)前所在地理信息位置。軟件可自由切換全國(guó)各大城市以及查看它的天氣信息。軟件可提供手動(dòng)更新功能以及后臺(tái)自動(dòng)更新天氣信息的功能。程序響應(yīng)速度快,獲取后臺(tái)信息快速無(wú)延誤,安全性高。2.4功能分析圖下圖是氣象軟件的功能分析圖圖2-1系統(tǒng)功能分析圖3總體設(shè)計(jì)3.1用戶界面設(shè)計(jì)根據(jù)需求分析可知道,首先用戶點(diǎn)擊進(jìn)入應(yīng)用程序時(shí),系統(tǒng)會(huì)獲取服務(wù)器上返回的文本信息,用程序處理完之后再進(jìn)行適配ListView便可獲得初始界面,用初始界面進(jìn)行初始化就可以到主界面了。設(shè)計(jì)初衷就是為了簡(jiǎn)潔明了,一目了然。設(shè)計(jì)出來(lái)的界面草圖如下所示。圖3-1初始化界面設(shè)計(jì)草圖圖3-2主界面設(shè)計(jì)草圖3.2總體功能設(shè)計(jì)3.2.1模塊設(shè)計(jì)功能模塊設(shè)計(jì)總體分為4部分,分別是活動(dòng)啟動(dòng),后臺(tái)Service服務(wù),用戶界面以及數(shù)據(jù)庫(kù),模塊包名如下圖所示:活動(dòng)啟動(dòng):活動(dòng)是Android程序的門面,在應(yīng)用中所看到的東西,都是活動(dòng),它與用戶交互最直接的組件。它有四種啟動(dòng)模式,分別是Standard、singleTop、singleTask還有SingleInstance。本程序是默認(rèn)的Standard啟動(dòng)模式。后臺(tái)Service:負(fù)責(zé)執(zhí)行那些不需要去和用戶交互而且還要求在系統(tǒng)中長(zhǎng)期運(yùn)行的任務(wù)。它并不依賴用戶界面,所以當(dāng)程序切換到后臺(tái),或者用戶直接打開另外一個(gè)應(yīng)用程序時(shí),服務(wù)仍然能夠保持正常運(yùn)行。適用于一些下載任務(wù)和自動(dòng)后臺(tái)更新服務(wù),例如一定時(shí)間內(nèi)自動(dòng)與服務(wù)器交互獲得氣象數(shù)據(jù)并且更新。用戶界面:由XML語(yǔ)言編寫的布局文件,布局文件中可以用許多系統(tǒng)自帶控件進(jìn)行裝飾,也可以設(shè)置自定義控件,為了讓每個(gè)控件都有條不紊地?cái)[放在界面上,我們需要設(shè)置相應(yīng)的布局來(lái)使控件按照布局的規(guī)則放置,常見的四種基本布局是LinearLayout、RelativeLayout、TableLayout、FrameLayout。本文初始化界面是用ListView,而主界面是用多重布局嵌套。圖3-3模塊包名圖Activity包主要用于存放所有與活動(dòng)相關(guān)的代碼,包內(nèi)有ChooseAreaActivity類和WeatherActivity類,它們分別代表選擇天氣活動(dòng)界面和顯示天氣主活動(dòng)界面。db包則是用于存放數(shù)據(jù)庫(kù)相關(guān)的代碼,包內(nèi)有WeatherDB類,它負(fù)責(zé)省市縣三級(jí)聯(lián)動(dòng)的數(shù)據(jù)存儲(chǔ),還有一個(gè)建庫(kù)工具類OpenHelper。而model包主要用于存放所有數(shù)據(jù)模型相關(guān)的代碼,例如省模塊的Province類、市模塊的County類、縣模塊City類。Receiver包用于存放所有廣播接收器相關(guān)的代碼,service包用于存放和服務(wù)有關(guān)的代碼,包內(nèi)的AutoUpdateService主要用于服務(wù)后臺(tái)自動(dòng)更新,使天氣信息可以在一定時(shí)間自動(dòng)從服務(wù)器上獲取數(shù)據(jù)并且刷新。util包是工具包,用于存放工具類相關(guān)的代碼,主要有網(wǎng)絡(luò)連接服務(wù)的HttpUtil工具類還有HttpCallbackListener監(jiān)聽類。3.3數(shù)據(jù)庫(kù)設(shè)計(jì)3.3.1系統(tǒng)數(shù)據(jù)分析通過(guò)分析氣象API接口,知道氣象信息并不需要利用數(shù)據(jù)庫(kù)進(jìn)行存儲(chǔ),只需進(jìn)行緩存就好。而真正我們需要處理的數(shù)據(jù)項(xiàng)就是建立Province、City、County三張表,分別存放省、市、縣的各種數(shù)據(jù)信息。3.4API接口分析當(dāng)我們將上獲得的省市縣數(shù)據(jù)處理成城市代號(hào)并訪問(wèn)相應(yīng)的地址時(shí),中國(guó)氣象網(wǎng)會(huì)返回相應(yīng)的天氣代號(hào),以下為部分城市天氣代號(hào)表的一部分:圖3-4城市天氣代號(hào)表當(dāng)我們把經(jīng)過(guò)處理的天氣代號(hào)發(fā)送到查詢天氣接口時(shí),服務(wù)器會(huì)把該城市的當(dāng)前的天氣信息以JSON格式返回給我們,如下所示:{“weatherinfo”:{“city”:”浦東”,“cityid”:”101021300”,“temp1”:”21℃”,“temp2”:”9℃”,“weather”:”多云轉(zhuǎn)小雨”,“img1”:”d1.gif”,“img2”:”n7.gif”,“ptime”:”11:00”}}一下是可供參照的氣象編碼表和風(fēng)力編碼表:圖3-5天氣現(xiàn)象編碼表圖3-6風(fēng)力方向編碼表3.5數(shù)據(jù)字典3.5.1省級(jí)信息表描述:對(duì)省級(jí)基本信息的存儲(chǔ),省級(jí)表的基本信息包括:自增長(zhǎng)主鍵id,province_name、province_code。表3-1省級(jí)信息表列名數(shù)據(jù)類型可否為空屬性名稱說(shuō)明idinteger否id自增長(zhǎng)主鍵Province_nameText否Provincename/Province_codetext否Province_code/3.5.2市級(jí)信息表描述:對(duì)市級(jí)基本信息的存儲(chǔ),省級(jí)表的基本信息包括:自增長(zhǎng)主鍵id,city_name,city_code,province_id。表3-2市級(jí)信息表列名數(shù)據(jù)類型可否為空屬性名稱說(shuō)明idInteger否Id自增長(zhǎng)主鍵City_nameText否City_name/City_codetext否City_code/Province_idinteger否Province_id外鍵3.5.3縣級(jí)信息表描述:對(duì)縣級(jí)基本信息的存儲(chǔ),省級(jí)表的基本信息包括:自增長(zhǎng)主鍵id,county_name,county_code,city_id。表3-3縣級(jí)信息表列名數(shù)據(jù)類型可否為空屬性名稱說(shuō)明IdInteger否Id自增長(zhǎng)主鍵County_nameText否County_name/County_codetext否County_code/city_idinteger否city_id外鍵4設(shè)計(jì)思想與實(shí)現(xiàn)整個(gè)氣象軟件是我自己獨(dú)立設(shè)計(jì)完成的雖然簡(jiǎn)單功能點(diǎn)并不多,技術(shù)要求也不高,但想實(shí)現(xiàn)卻需要用到UI、網(wǎng)絡(luò)、定位、數(shù)據(jù)存儲(chǔ)、服務(wù)等技術(shù),算是比較考驗(yàn)綜合應(yīng)用能力。也算是重溫了基礎(chǔ)知識(shí)點(diǎn)和四大組件。4.1省市縣三級(jí)聯(lián)動(dòng)模塊省界面如圖4.1:圖4-1省界面市界面如圖4.2:圖4-2市界面縣區(qū)界面如圖4.3:圖4-3省界面全國(guó)的省市縣數(shù)據(jù)都是從服務(wù)器端獲取到的,由于服務(wù)器返回的省市縣數(shù)據(jù)都是“代號(hào)|城市,代號(hào)|城市”這種格式,所以要需要進(jìn)行解析處理。處理完后,就可以編寫界面,主要是通過(guò)ListView將省市縣數(shù)據(jù)顯示在其中。接著是配合適配器查詢省市縣,優(yōu)先從數(shù)據(jù)庫(kù)中查詢,沒有再?gòu)姆?wù)器端獲取,一般第一次初始化都是要從服務(wù)器端獲取。最后通過(guò)返回主線程進(jìn)行UI控件處理就可以完成以上效果。4.2主界面模塊主界面如圖4-4:圖4-2主界面主界面的設(shè)計(jì)使用TextView來(lái)顯示數(shù)據(jù)信息,然后嵌套多層LinearLayout和RelativeLayout來(lái)控制TextView的顯示位置,達(dá)到圖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后臺(tái)自動(dòng)更新天氣后臺(tái)自動(dòng)更新天氣可以使用戶每次打開軟件時(shí)看到的都是最新的天氣信息,要想實(shí)現(xiàn)這個(gè)功能,需要?jiǎng)?chuàng)建一個(gè)長(zhǎng)期在后臺(tái)運(yùn)行的定時(shí)任務(wù),這也是Android的優(yōu)勢(shì)之一,新建一個(gè)AutoUpdateService類繼承自Service類,重寫onBind和onStartCommand。在onStartCommand方法中開啟子線程,然后調(diào)用updateWeather方法更新天氣,再將氣象信息存在SharePreferences文件中,并且為了使軟件不會(huì)因?yàn)樾枰?jīng)常訪問(wèn)服務(wù)器而耗費(fèi)額外的流量,所以我們要設(shè)置一定時(shí)間間隔,到特定時(shí)間時(shí),就會(huì)啟動(dòng)廣播去通知后臺(tái)更新天氣信息,這樣即可完成后臺(tái)天氣信息的自動(dòng)更新了。具體代碼如下所示: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;
咖啡店創(chuàng)業(yè)計(jì)劃書第一部分:背景在中國(guó),人們?cè)絹?lái)越愛喝咖啡。隨之而來(lái)的咖啡文化充滿生活的每個(gè)時(shí)刻。無(wú)論在家里、還是在辦公室或各種社交場(chǎng)合,人們都在品著咖啡??Х戎饾u與時(shí)尚、現(xiàn)代生活聯(lián)系在一齊。遍布各地的咖啡屋成為人們交談、聽音樂、休息的好地方,咖啡豐富著我們的生活,也縮短了你我之間的距離,咖啡逐漸發(fā)展為一種文化。隨著咖啡這一有著悠久歷史飲品的廣為人知,咖啡正在被越來(lái)越多的中國(guó)人所理解。第二部分:項(xiàng)目介紹第三部分:創(chuàng)業(yè)優(yōu)勢(shì)目前大學(xué)校園的這片市場(chǎng)還是空白,競(jìng)爭(zhēng)壓力小。而且前期投資也不是很高,此刻國(guó)家鼓勵(lì)大學(xué)生畢業(yè)后自主創(chuàng)業(yè),有一系列的優(yōu)惠政策以及貸款支持。再者大學(xué)生往往對(duì)未來(lái)充滿期望,他們有著年輕的血液、蓬勃的朝氣,以及初生牛犢不怕虎的精神,而這些都是一個(gè)創(chuàng)業(yè)者就應(yīng)具備的素質(zhì)。大學(xué)生在學(xué)校里學(xué)到了很多理論性的東西,有著較高層次的技術(shù)優(yōu)勢(shì),現(xiàn)代大學(xué)生有創(chuàng)新精神,有對(duì)傳統(tǒng)觀念和傳統(tǒng)行業(yè)挑戰(zhàn)的信心和欲望,而這種創(chuàng)新精神也往往造就了大學(xué)生創(chuàng)業(yè)的動(dòng)力源泉,成為成功創(chuàng)業(yè)的精神基礎(chǔ)。大學(xué)生創(chuàng)業(yè)的最大好處在于能提高自己的潛力、增長(zhǎng)經(jīng)驗(yàn),以及學(xué)以致用;最大的誘人之處是透過(guò)成功創(chuàng)業(yè),能夠?qū)崿F(xiàn)自己的理想,證明自己的價(jià)值。第四部分:預(yù)算1、咖啡店店面費(fèi)用咖啡店店面是租賃建筑物。與建筑物業(yè)主經(jīng)過(guò)協(xié)商,以合同形式達(dá)成房屋租賃協(xié)議。協(xié)議資料包括房屋地址、面積、結(jié)構(gòu)、使用年限、租賃費(fèi)用、支付費(fèi)用方法等。租賃的優(yōu)點(diǎn)是投資少、回收期限短。預(yù)算10-15平米店面,啟動(dòng)費(fèi)用大約在9-12萬(wàn)元。2、裝修設(shè)計(jì)費(fèi)用咖啡店的滿座率、桌面的周轉(zhuǎn)率以及氣候、節(jié)日等因素對(duì)收益影響較大??Х瑞^的消費(fèi)卻相對(duì)較高,主要針對(duì)的也是學(xué)生人群,咖啡店布局、格調(diào)及采用何種材料和咖啡店效果圖、平面圖、施工圖的設(shè)計(jì)費(fèi)用,大約6000元左右3、裝修、裝飾費(fèi)用具體費(fèi)用包括以下幾種。(1)外墻裝飾費(fèi)用。包括招牌、墻面、裝飾費(fèi)用。(2)店內(nèi)裝修費(fèi)用。包括天花板、油漆、裝飾費(fèi)用,木工、等費(fèi)用。(3)其他裝修材料的費(fèi)用。玻璃、地板、燈具、人工費(fèi)用也應(yīng)計(jì)算在內(nèi)。整體預(yù)算按標(biāo)準(zhǔn)裝修費(fèi)用為360元/平米,裝修費(fèi)用共360*15=5400元。4、設(shè)備設(shè)施購(gòu)買費(fèi)用具體設(shè)備主要有以下種類。(1)沙發(fā)、桌、椅、貨架。共計(jì)2250元(2)音響系統(tǒng)。共計(jì)450(3)吧臺(tái)所用的烹飪?cè)O(shè)備、儲(chǔ)存設(shè)備、洗滌設(shè)備、加工保溫設(shè)備。共計(jì)600(4)產(chǎn)品制造使用所需的吧臺(tái)、咖啡杯、沖茶器、各種小碟等。共計(jì)300凈水機(jī),采用美的品牌,這種凈水器每一天能生產(chǎn)12l純凈水,每一天銷售咖啡及其他飲料100至200杯,價(jià)格大約在人民幣1200元上下??Х葯C(jī),咖啡機(jī)選取的是電控半自動(dòng)咖啡機(jī),咖啡機(jī)的報(bào)價(jià)此刻就應(yīng)在人民幣350元左右,加上另外的附件也不會(huì)超過(guò)1200元。磨豆機(jī),價(jià)格在330―480元之間。冰砂機(jī),價(jià)格大約是400元一臺(tái),有點(diǎn)要說(shuō)明的是,最好是買兩臺(tái),不然夏天也許會(huì)不夠用。制冰機(jī),從制冰量上來(lái)說(shuō),一般是要留有富余。款制冰機(jī)每一天的制冰量是12kg。價(jià)格稍高550元,質(zhì)量較好,所以能夠用很多年,這么算來(lái)也是比較合算的。5、首次備貨費(fèi)用包括購(gòu)買常用物品及低值易耗品,吧臺(tái)用各種咖啡豆、奶、茶、水果、冰淇淋等的費(fèi)用。大約1000元6、開業(yè)費(fèi)用開業(yè)費(fèi)用主要包括以下幾種。(1)營(yíng)業(yè)執(zhí)照辦理費(fèi)、登記費(fèi)、保險(xiǎn)費(fèi);預(yù)計(jì)3000元(2)營(yíng)銷廣告費(fèi)用;預(yù)計(jì)450元7、周轉(zhuǎn)金開業(yè)初期,咖啡店要準(zhǔn)備必須量的流動(dòng)資金,主要用于咖啡店開業(yè)初期的正常運(yùn)營(yíng)。預(yù)計(jì)2000元共計(jì): 120000+6000+5400+2250+450+600+300+1200+1200+480+400+550+1000+3000+450+2000=145280元第五部分:發(fā)展計(jì)劃1、營(yíng)業(yè)額計(jì)劃那里的營(yíng)業(yè)額是指咖啡店日常營(yíng)業(yè)收入的多少。在擬定營(yíng)業(yè)額目標(biāo)時(shí),必須要依據(jù)目前市場(chǎng)的狀況,再思考到咖啡店的經(jīng)營(yíng)方向以及當(dāng)前的物價(jià)情形,予以綜合衡量。按照目前流動(dòng)人口以及人們對(duì)咖啡的喜好預(yù)計(jì)每一天的營(yíng)業(yè)額為400-800,根據(jù)淡旺季的不同可能上下浮動(dòng)2、采購(gòu)計(jì)劃依據(jù)擬訂的商品計(jì)劃,實(shí)際展開采購(gòu)作業(yè)時(shí),為使采購(gòu)資金得到有效運(yùn)用以及商品構(gòu)成達(dá)成平衡,務(wù)必針對(duì)設(shè)定的商品資料排定采購(gòu)計(jì)劃。透過(guò)營(yíng)業(yè)額計(jì)劃、商品計(jì)劃與采購(gòu)計(jì)劃的確立,我們不難了解,一家咖啡店為了營(yíng)業(yè)目標(biāo)的達(dá)成,同時(shí)有效地完成商品構(gòu)成與靈活地運(yùn)用采購(gòu)資金,各項(xiàng)基本的計(jì)劃是不可或缺的。當(dāng)一家咖啡店設(shè)定了營(yíng)業(yè)計(jì)劃、商品計(jì)劃及采購(gòu)計(jì)劃之后,
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 技術(shù)說(shuō)明書樣本
- 整體廚房裝修設(shè)計(jì)承包范本
- 2024混凝土道路施工合同樣本
- 2024品牌代理經(jīng)營(yíng)合同版
- 廣西壯族自治區(qū)七年級(jí)上學(xué)期語(yǔ)文期中測(cè)試試卷10套【附答案】
- 廣告設(shè)計(jì)制作合作方案
- 保健食品委托代理銷售協(xié)議書
- 設(shè)備維修承包合同2024年
- 2023年高考地理第一次模擬考試卷-(湖北B卷)(考試版)
- 2023年高考地理專題復(fù)習(xí)新題典題精練-洋流(解析版)
- 新產(chǎn)品試制流程管理辦法
- 通用橫版企業(yè)報(bào)價(jià)單模板
- 潛油泵及潛油泵加油機(jī)講義
- 物業(yè)服務(wù)公司各崗位規(guī)范用語(yǔ)
- 醫(yī)患溝通內(nèi)容要求記錄模板(入院、入院三日、術(shù)前、術(shù)后、出院)
- 航海學(xué)天文定位第四篇第6章天文定位
- 淺談深度教學(xué)中小學(xué)數(shù)學(xué)U型學(xué)習(xí)模式
- 物理電學(xué)暗箱專題30道
- 裝修公司員工勞動(dòng)合同
- 江西上饒鉛山汽車駕駛科目三考試線路
- 通過(guò)一起放火案件淺析放火案件的移交工作
評(píng)論
0/150
提交評(píng)論