基於android的天氣預報的設計與實現
目錄
- 應用開發技術及開發平臺介紹
- 應用需求分析
- 應用功能設計及其描述
- 應用UI展示
①開發技術:
本系統是採用面向物件的軟體開發方法,基於Android studio開發平臺,以Android作為本系統的開發語言實現音樂播放器預定的需求功能。
②平臺介紹
- 硬體平臺
CPU奔騰雙核 (主頻2.0GHz)
記憶體1G以上
64或32位PC機
500G硬碟
- 軟體平臺
作業系統:Windows XP \ Win7\Win8\win10
開發工具:Android Studio
本軟體佔用系統空間小,能滿足使用者對常見音訊格式檔案的播放要求,還具有歌曲、歌詞下載等功能,介面美觀互動性好,易於使用者理解操作,且不依賴於其它軟體,消耗資源少易維護,程式有較好的健壯性和正確性。執行該軟體所需的壞境配置不高,能滿足絕大多數使用者的需求。
②應用需求分析
現有的4G技術和移動網際網路技術的快速發展,智慧手機功能的不斷增強,讓基於Android平臺的查詢需求越來越多。本軟體就是利用現有的網路快速獲取網路上的天氣資訊並顯示到手機終端上,為使用者提供實時的天氣查詢和近期天氣查詢服務,為工作、出行等帶來便利。通過Web Service等技術讓使用者體驗到前所未有的移動計算。
③應用功能設計及其描述
1、總體設計
本軟體是一個App Widget應用程式,啟動程式後可以進行城市、更新頻率的設定,可以通過圖片和文字顯示當前和未來的天氣狀況,包括溫度、溼度、風向和雨雪情況等。這些天氣資料是通過後臺服務獲取的,這個後臺服務可以按照一定的時間間隔,通過開源API提供的服務獲取天氣預報資訊,並將天氣資訊儲存在資料庫中。該軟體的基本功能需求有:
(1) 啟動App Widget應用程式;
(2) 設定介面:對要顯示天氣預報的城市及更新頻率進行設定;
(3) 顯示介面:通過文字和圖片顯示當前的天氣情況,包括日期、時間、城市、最高溫度、最低溫度、當前溫度等。
(4) 詳細介面:在顯示出“顯示介面”上所有資訊的同時用列表的形式顯示當天的天氣情況。
2、資料庫設計
本軟體中有兩部分資料需要儲存,一個是顯示頁面的資料,另一個是詳細頁面的資料。但是資料量都不是很大,因此可以選擇SQLite資料庫作為儲存資料的方法,建立資料庫forecasts.db,並且建立兩張表weather_widget和weather_forecast,分別儲存顯示頁面的資料和詳細頁面的資料。
3、功能模組設計
從功能需求上分析可以看出,整個應用程式應劃分為4個模組,分別是程式啟動、使用者介面、後臺服務和資料庫介面卡,各模組之間的關係如下圖所示:
從模組結構圖中不難看出,後臺服務是整個應用程式的核心,主要是“資料獲取模組”,負責週期性的從開源API獲取天氣資訊。後臺服務在程式啟動時就由AppWidgetProvider啟動,也可由使用者介面通過startService()進行啟動,啟動後的後臺服務將一直保持執行狀態。
使用者介面是從資料庫中獲取天氣資訊,而沒有直接通過網路訪問開源API的天氣資料。這樣設計,一方面可以避免因網路通訊不暢而造成介面失去響應;另一方面,後臺服務可以及時更新資料,以保證資料的準確性。資料庫介面卡封裝了所有對SQLite資料庫操作的方法,使用者介面和後臺服務會呼叫它來實現對資料庫的操作。
④UI展示