999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

Android移動終端天氣預報軟件的設計與實現

2018-08-10 10:47:16宋曼
科學與財富 2018年16期

宋曼

摘 要:天氣預報作為一種基礎服務已經深入的融入到人們日常生活中,現在我們出行、上班、晨練、出差、旅游都離不開天氣預報。本文提出設計一個基于Andriod技術的天氣預報APP軟件,它是一種在Andriod手機平臺運行的非常實用的天氣信息提供軟件,使用方便且功能強大,能提供各方面天氣相關信息和貼心的生活指數。用戶可以通過天氣預報軟件及時獲得近期天氣的狀況和變化,及時做好各方面計劃和防御措施。

關鍵詞:Android;天氣預報;APP

天氣信息和人們的日常生活息息相關,隨著人們活動范圍的擴大和出行需要,及時精確的獲取天氣信息顯得越來越重要。為此設計了基于Andriod技術的天氣預報APP軟件,它是一種在Andriod手機平臺運行的非常實用的天氣信息提供軟件,使用方便且功能強大,能提供各方面天氣相關信息和貼心的生活指數。用戶可以通過天氣預報軟件及時獲得近期天氣的狀況和變化,及時做好各方面計劃和防御措施。

一、需求分析

該天氣預報軟件中具備以下功能。

1. 可以羅列出全國所有的省、市、縣。

2. 可以查看全國任意城市的天氣信息。

3. 可以自由地切換城市,去查看其他城市的天氣。

4. 提供手動更新以及后臺自動更新天氣的功能。

二、天氣預報軟件的各模塊功能描述

1. 城市管理模塊

此模塊包含城市添加、刪除和查找。用戶可以通過手動輸入,自動定位和選擇系統內置的熱門城市等方式選擇目標城市。也可以在城市管理界面進行城市的長按刪除。

2. 顯示天氣模塊

此模塊主要完成顯示所選城市相關天氣信息,顯示未來幾天天氣預覽和一些必要的生活指數。另外用戶還可以通過系統內置分享將天氣信息分享到朋友圈,微信好友和QQ好友。

3. 實景天氣模塊

此模塊中用戶可以通過拍照和從圖庫選取兩種方式選擇實景天氣圖片并上傳到服務器,還可從服務器下載實景天氣圖片并查看。

4. 用戶管理模塊

此模塊包含一整套的用戶管理解決方案,主要功能包括:注冊,登錄,找回密碼,更改密碼,查看和修改用戶基本信息等功能。

5. 設置界面模塊

此模塊提供軟件相關的用戶反饋,檢查更新和關于我們。

三、天氣預報軟件各模塊功能的實現

1. 城市管理模塊

全國所有省市縣的數據都是從服務器端獲取到的,因此這里和服務器的交互是必不可少的,在 util 包下先增加一個 HttpUtil 類從服務器端獲取數據;服務器返回的省市縣數據都是“代號|城市,代號|城市”這種格式的,因此提供一個工具類來解析和處理這種數據:在 util 包下新建一個 Utility 類做工具類。接下來是在 res/layout 目錄中新建choose_area.xml 布局,編寫布局文件;然后編寫用于遍歷省市縣數據的活動:在 activity 包下新建 ChooseAreaActivity類;最后配置 AndroidManifest.xml 文件。這樣就完成了全國省市縣數據的遍歷。

2. 顯示天氣模塊

查詢天氣,并且把天氣信息顯示出來了。天氣信息應該在一個新的界面進行展示,因此需要創建一個新的活動和布局文件。在 res/layout 目錄中新建 weather_layout.xml作為布局文件;在 Utility 類中添加方法,用于解析和處理服務返回的 JSON 數據;最后創建活動:在 activity 包下新建 WeatherActivity 繼承自 Activity。

3. 實景天氣模塊

經過以上2個階段的開發,現在天氣預報軟件的主體功能已經有了,不過你會發現目前存在著一個比較嚴重的 bug,就是當你選中了某一個城市之后,就沒法再去查看其他城市的天氣了,即使退出程序,下次進來的時候還會直接跳轉到 WeatherActivity。因此,在此模塊中將加入切換城市的功能,并且為了能夠實時獲取到最新的天氣,將加入手動更新天氣的功能。

首先在布局文件中加入切換城市和更新天氣的按鈕,修改布局文件 weather_layout.xml ;然后修改 WeatherActivity 中的代碼, 在 Intent 中 加 入標志位,并添加對標志位進行處理的代碼,實現切換城市和更新天氣的功能。

4. 用戶管理模塊

為了要讓天氣預報軟件更加智能,在這個模塊加入后臺自動更新天氣的功能,這樣可以盡可能地保證用戶每次打開軟件時看到的都是最新的天氣信息。要想實現上述功能,就需要創建一個長期在后臺運行的定時任務。首先在 service 包下新建一個 AutoUpdateService 繼承自

Service,在 onStartCommand()方法中先是開啟了一個子線程,然后在子線程中調用updateWeather()方法來更新天氣,我們仍然會將服務器返回的天氣數據交給 Utility 的handleWeatherResponse()方法去處理,這樣就可以把最新的天氣信息存儲到 SharedPreferences文件中。之后創建定時任務,為了保證軟件不會消耗過多的流量,這里將時間間隔設置為 8 小時,8 小時后就執行AutoUpdateReceiver 的 onReceive()方法,在 receiver 包下新建 AutoUpdateReceiver 繼承自 BroadcastReceiver;然后修改WeatherActivity 中的代碼激活 AutoUpdateService 這個服務。最后在 AndroidManifest.xml 中注冊新增的服務和廣播接收器。這樣只要一旦選中了某個城市并成功更新天氣之后,AutoUpdateService就會一直在后臺運行,并保證每 8 小時更新一次天氣。

5. 設置界面模塊

設計天氣預報軟件的圖標。將這張圖片命名成 logo.png,放入 res/ drawable-hdpi 目錄,然后修改配置文件 AndroidManifest.xml中的代碼;修改程序的名稱,打開 res/values/string.xml 文件,其中 app_name 對應的就是程序名稱。

主站蜘蛛池模板: 国产91透明丝袜美腿在线| 国产精品性| 色综合狠狠操| 久久人午夜亚洲精品无码区| 欧美性爱精品一区二区三区 | 国产一区免费在线观看| 色屁屁一区二区三区视频国产| 日韩在线观看网站| 亚洲欧美国产视频| 免费一级无码在线网站| 精品人妻无码中字系列| 亚洲区欧美区| 91外围女在线观看| 国产精品美女自慰喷水| 亚洲成A人V欧美综合| 亚洲va在线∨a天堂va欧美va| 国产剧情一区二区| 国产精品爽爽va在线无码观看 | 欧美午夜在线播放| 国产人碰人摸人爱免费视频| 亚洲91精品视频| 一区二区影院| 天天视频在线91频| 国产亚洲精品精品精品| 国产香蕉在线| 亚洲国产天堂在线观看| 成人综合网址| 激情综合图区| 992Tv视频国产精品| 国产永久在线观看| 亚洲一区二区三区在线视频| 亚洲天堂成人| 国产成人永久免费视频| 欧美成人二区| 国产高清国内精品福利| 国产精品成人久久| 色偷偷一区二区三区| 日韩美女福利视频| 黄色成年视频| 久久精品91麻豆| 无码国产偷倩在线播放老年人 | 91无码人妻精品一区| 婷婷五月在线视频| 国产精品自拍合集| 国产在线观看第二页| 一级毛片免费的| 亚洲日韩高清无码| 欧美不卡在线视频| 中文字幕亚洲电影| 亚洲AV色香蕉一区二区| 亚洲av色吊丝无码| 亚洲欧美精品在线| 亚洲伊人天堂| 国产国产人成免费视频77777| 亚洲人成影院在线观看| 国产成人1024精品下载| 国产精品无码影视久久久久久久| 国产情侣一区| 色欲色欲久久综合网| 久久久久久久蜜桃| 91原创视频在线| 国产69精品久久久久孕妇大杂乱| 91在线精品麻豆欧美在线| 91在线日韩在线播放| 精品福利视频导航| 中文字幕欧美日韩| 精品成人一区二区三区电影 | 国产精品女人呻吟在线观看| 久久国产免费观看| www.91中文字幕| 精品国产www| 狠狠色香婷婷久久亚洲精品| 国产精品.com| 国产色网站| 精品国产免费第一区二区三区日韩| 国产成人成人一区二区| 亚洲国产亚洲综合在线尤物| 国产日韩精品欧美一区喷| 欧美日韩激情在线| 久久一本精品久久久ー99| 亚洲日韩高清在线亚洲专区| 一本视频精品中文字幕|