天氣信息和人們的日常生活息息相關(guān),隨著人們活動范圍的擴(kuò)大和出行需要,天氣預(yù)報(bào)已經(jīng)成為人們生活不可缺少的一部分,在這樣的市場需求的基礎(chǔ)上,本人設(shè)計(jì)了天氣預(yù)報(bào)軟件,它可以" />

国产成人精品无码青草_亚洲国产美女精品久久久久∴_欧美人与鲁交大毛片免费_国产果冻豆传媒麻婆精东

15158846557 在線咨詢 在線咨詢
15158846557 在線咨詢
所在位置: 首頁 > 營銷資訊 > 網(wǎng)站運(yùn)營 > 天氣預(yù)報(bào) APP 的設(shè)計(jì)與實(shí)現(xiàn)

天氣預(yù)報(bào) APP 的設(shè)計(jì)與實(shí)現(xiàn)

時(shí)間:2023-06-05 01:30:01 | 來源:網(wǎng)站運(yùn)營

時(shí)間:2023-06-05 01:30:01 來源:網(wǎng)站運(yùn)營

天氣預(yù)報(bào) APP 的設(shè)計(jì)與實(shí)現(xiàn):

一、需求分析

背景

天氣信息和人們的日常生活息息相關(guān),隨著人們活動范圍的擴(kuò)大和出行需要,天氣預(yù)報(bào)已經(jīng)成為人們生活不可缺少的一部分,在這樣的市場需求的基礎(chǔ)上,本人設(shè)計(jì)了天氣預(yù)報(bào)軟件,它可以提供天氣相關(guān)信息和生活指數(shù),用戶可以通過軟件及時(shí)獲取近期的天氣狀況和變化,及時(shí)做好各方面的計(jì)劃和防護(hù)措施。

需求總體介紹

天氣預(yù)報(bào)的用戶主要是對獲取天氣信息有需求的人群,對于普通用戶來說,主要了解當(dāng)日的天氣情況,選擇相應(yīng)的穿衣搭配和出行安排,對于相關(guān)行業(yè)人員來說,可根據(jù)未來天氣狀況制定相關(guān)措施,保證行業(yè)項(xiàng)目的順利實(shí)施。因此天氣預(yù)報(bào)的受眾需要了解目前天氣狀況和未來的天氣變化等,對其他的城市天氣狀況也會有所關(guān)注。







系統(tǒng)的非功能性需求

用戶界面需求

界面簡潔明了,采用圖標(biāo)加文字結(jié)合的方式,易于用戶理解,對于重要信息,放大進(jìn)行顯示,界面排列符合閱讀邏輯。

軟硬件需求

客戶端操作系統(tǒng):Android 4.0 及以上;

客戶端硬件設(shè)備:Android 手機(jī)等移動終端

產(chǎn)品質(zhì)量需求

二、系統(tǒng)設(shè)計(jì)

體系結(jié)構(gòu)設(shè)計(jì)

系統(tǒng)功能模塊劃分

針對此天氣預(yù)報(bào) APP,按照設(shè)計(jì)的基本要求,可以將系統(tǒng)劃分為下面幾個功能模塊:

天氣顯示界面模塊

顯示城市天氣狀況,包括溫度,天氣,風(fēng)力,生活指數(shù)等信息,顯示未來七天天氣,及小時(shí)級天氣。通過滑動切換不同城市的天氣信息。

城市設(shè)置模塊

編輯天氣城市列表信息。

城市增加模塊

用戶可通過列表選擇或搜索進(jìn)行城市的添加。

分享模塊

用戶可通過分享按鈕將天氣信息分享給其他用戶。







數(shù)據(jù)設(shè)計(jì)

本軟件數(shù)據(jù)庫主要包含用戶添加的城市數(shù)據(jù),結(jié)構(gòu)較為簡單,由一個城市表組成。

人機(jī)交互設(shè)計(jì)

界面流設(shè)計(jì)







功能界面原型設(shè)計(jì)

三、系統(tǒng)實(shí)現(xiàn)

系統(tǒng)目錄結(jié)構(gòu)

├─build

├─libs

└─src

├─androidTest

├─main

│ ├─assets

│ ├─Java

│ │ └─com

│ │ └─taimin

│ │ └─weatherforecast

│ │ ├─Adapter //適配器目錄

│ │ ├─bean //bean 類

│ │ ├─db //數(shù)據(jù)庫適配器

│ │ ├─fragment //fragment 文件

│ │ ├─utils //工具類

│ │ └─view //view 文件

│ └─res

│ ├─drawable

│ ├─drawable-v24

│ ├─layout

│ ├─mipmap-anydpi-v26

│ ├─mipmap-hdpi

│ ├─mipmap-mdpi

│ ├─mipmap-xhdpi

│ ├─mipmap-xxhdpi

│ ├─mipmap-xxxhdpi

│ └─values

└─test

系統(tǒng)功能實(shí)現(xiàn)

軟件通過 activity+fragment 進(jìn)行布局,通過控制 fragment 的切換來切換不同的頁面,為了防止重復(fù)切換帶來的卡頓,fragment 均進(jìn)行了緩存處理。

天氣預(yù)報(bào)主界面

界面展示













主界面是一個 fragment,采用 RelativeLayout(頂部欄)+ViewPager 來實(shí)現(xiàn)不同城市天氣的切換,通過對 viewpager 監(jiān)聽實(shí)現(xiàn)頂部欄城市及背景的切換,用戶在進(jìn)入 app 時(shí)系統(tǒng)會自動進(jìn)行定位并將當(dāng)前位置設(shè)置當(dāng)前城市,具體代碼為:

城市管理







用戶通過點(diǎn)擊主界面右上角圖標(biāo)即可進(jìn)入該界面,用戶可以通過該界面進(jìn)行快速選擇城市,刪除城市等功能,選擇城市后即可快速跳轉(zhuǎn)到 viewpager 制定頁面。具體代碼如下:

城市選擇



















城市選擇界面首先會進(jìn)行定位,頁面分為五個部分,分別為搜索欄,定位欄,熱門城市,城市列表,側(cè)邊滑動條,用戶可通過選擇或搜索來完成城市的添加。部分代碼如下:

天氣分享













用戶點(diǎn)擊頁面的右上角即可進(jìn)行當(dāng)前城市信息的分享操作。具體代碼如下:

雷達(dá)云圖







雷達(dá)云圖功能采用 webview 方式,接入中國天氣網(wǎng)雷達(dá)云圖 h5 頁面實(shí)現(xiàn)。

我的







四、總結(jié)

項(xiàng)目技術(shù)總結(jié)

整個 app 實(shí)現(xiàn)了對天氣預(yù)報(bào)的獲取、展示,位置的獲取等功能。通過安卓網(wǎng)絡(luò)編程的方式可以很方便的獲取到天氣 JSON 數(shù)據(jù),通過使用 GSON 庫,解析為我們軟件需要的數(shù)據(jù)結(jié)構(gòu),給軟件的編寫提供了極大的便利。安卓的 Activity、Fragment、Service 等提供了強(qiáng)大的數(shù)據(jù)處理功能,使各個頁面間可以靈活的傳輸數(shù)據(jù)。界面采用了 viewpager 與 fragment 結(jié)合的方式進(jìn)行設(shè)計(jì),每個 fragment 對應(yīng)一個城市頁面,可以通過滑動進(jìn)行翻頁控制。且為防止多頁面造成的卡頓,app 會首先進(jìn)行 fragment 的初始化緩存,使軟件響應(yīng)速度得到提升。

技術(shù)創(chuàng)新及特點(diǎn)

通過 GSON 庫解析請求到的 JSON 數(shù)據(jù),GSON 是 Google 提供的用來在 Java 對象和 JSON 數(shù)據(jù)之間進(jìn)行映射的 Java 類庫??梢詫⒁粋€ JSON 字符轉(zhuǎn)成一個 Java 對象,或者將一個 Java 轉(zhuǎn)化為 JSON 字符串,使用更加靈活。

對于一些通用的工具函數(shù)進(jìn)行了封裝,便于使用。

城市天氣信息與軟件背景對應(yīng)更新,增加了軟件的統(tǒng)一性。

采用下拉刷新的方式進(jìn)行天氣信息的更新,更加方便快捷。

個人收獲與體會

經(jīng)過本學(xué)期對 Android 開發(fā)的學(xué)習(xí)以及本項(xiàng)目的編寫,使我學(xué)到了許多開發(fā)相關(guān)的知識,比如 Android 環(huán)境的搭建,Intent、Activity、fragment、SQLite 的用法以及網(wǎng)絡(luò)編程相關(guān)內(nèi)容。因?yàn)楸緦W(xué)期同時(shí)開展了軟件工程課程,使我對軟件的工程化構(gòu)建有了一個初步的了解,避免了以往編寫程序時(shí)耦合高、軟件功能未分離等缺點(diǎn)。同時(shí)也讓我了解到了 Android 的布局方式,使我編寫出了美觀的軟件界面。軟件的編寫不是一帆風(fēng)順的,在使用 view pager 做滑動切換時(shí),我遇到了頁面卡頓、數(shù)據(jù)不更新、fragment 間通信等一些困難,但都一一克服了,這也讓對 Android 開發(fā)有了更加深入的了解。我相信我的軟件在各個方面還有許多需要改進(jìn)的地方,同時(shí)軟件還可以進(jìn)一步發(fā)展,添加一些對用戶有利的功能,未來我會繼續(xù)進(jìn)行完善。

最后感謝老師及同學(xué)們的幫助,使我解決了軟件開發(fā)方面的一些問題,使得軟件順利開發(fā)完成。

關(guān)鍵詞:實(shí)現(xiàn),設(shè)計(jì),天氣預(yù)報(bào)

74
73
25
news

版權(quán)所有? 億企邦 1997-2025 保留一切法律許可權(quán)利。

為了最佳展示效果,本站不支持IE9及以下版本的瀏覽器,建議您使用谷歌Chrome瀏覽器。 點(diǎn)擊下載Chrome瀏覽器
關(guān)閉