Android手机天气预报项目报告.docx
- 文档编号:83857
- 上传时间:2022-10-02
- 格式:DOCX
- 页数:14
- 大小:619.23KB
Android手机天气预报项目报告.docx
《Android手机天气预报项目报告.docx》由会员分享,可在线阅读,更多相关《Android手机天气预报项目报告.docx(14页珍藏版)》请在冰豆网上搜索。
Android手机天气预报项目报告
Android手机天气预报项目报告
编辑整理:
尊敬的读者朋友们:
这里是精品文档编辑中心,本文档内容是由我和我的同事精心编辑整理后发布的,发布之前我们对文中内容进行仔细校对,但是难免会有疏漏的地方,但是任然希望(Android手机天气预报项目报告)的内容能够给您的工作和学习带来便利。
同时也真诚的希望收到您的建议和反馈,这将是我们进步的源泉,前进的动力。
本文可编辑可修改,如果觉得对您有帮助请收藏以便随时查阅,最后祝您生活愉快业绩进步,以下为Android手机天气预报项目报告的全部内容。
13
1.2开发目标
现有的3G技术和移动互联网技术的快速发展,智能手机功能的不断增强,让基于Android平台的查询需求越来越多。
本软件就是利用现有的网络快速获取网络上的天气信息并显示到手机终端上,为用户提供实时的天气查询和近期天气查询服务,为工作、出行等带来便利.通过WebService等技术让用户体验到前所未有的移动计算。
第2章项目设计
2.1项目总体设计
本软件是一个AppWidget应用程序,启动程序后可以进行城市、更新频率的设置,可以通过图片和文字显示当前和未来的天气状况,包括温度、湿度、风向和雨雪情况等。
这些天气数据是通过后台服务获取的,这个后台服务可以按照一定的时间间隔,通过Google提供的服务获取天气预报信息,并将天气信息保存在数据库中。
该软件的基本功能需求有:
(1)启动AppWidget应用程序;
(2)设置界面:
对要显示天气预报的城市及更新频率进行设置;
(3)显示界面:
通过文字和图片显示当前的天气情况,包括日期、时间、城市、最高温度、最低温度、当前温度等.
(4)详细界面:
在显示出“显示界面”上所有信息的同时用列表的形式显示今后四天的天气情况。
2.2技术框架设计
2.2.1 开发环境
Android的上层应用程序是用Java语言开发的,一般情况下是基于Dalvik虚拟机的,所以Google公司推荐使用主流的Java集成开发环境Eclipse。
而用Java语言进行开发,需要用到SUN公司提供的JavaSDK(其中包括JRE:
JavaRuntimeEnvironment)。
此外,Android的应用程序开发和Java开发有较大区别的,需要使用Google提供的AndroidSDK。
同时,要在Eclipse上安装ADT,为Android开发提供开发工具的升级或者变更,是Eclipse下开发工具的升级或下载的工具.
简言之,需要以下软件,才能搭建Android开发环境,从而进行Android应用程序的开发。
(1)JavaSDK
(2)Eclipse
(3)AndroidSDK
(4)ADT
2。
2。
2 技术支持
本软件使用基于SOAP(简单对象访问协议)的WebService技术来实现与服务器端的信息交互,获取网络上的数据。
WebService使用基于XML技术的消息处理,作为基本的数据通讯方式.WebService建立在一些通用协议的基础上,如HTTP、SOAP、XML、WSDL、UDDI等。
各应用程序通过网络协议和规定的一些标准数据格式(HTTP、XML、SOAP)来访问WebService.
而所有的SOAP消息都使用XML编码.一条SOAP消息就是一个包含有一个必需的SOAP的封装包,一个可选的SOAP标头和一个必需的SOAP体块的XML文档。
XML文档在Android平台上的解析可以通过SAX的方式方便快速的完成.解析Android应用程序中获得的列表数据XML文件,对XML文件中的数据实现分离,得到指定的所需要的信息,然后执行存入数据库或显示到页面等相应的处理.
Android的开发组Activity、IntentReceiver、Service、ContentProvider等,可以实现不同页面之间的跳转;数据的获取和实现与数据库的实时交互;不同页面和进程间数据的共享.
2.3数据库设计
本软件中有两部分数据需要存储,一个是显示页面的数据,另一个是详细页面的数据。
但是数据量都不是很大,因此可以选择SQLite数据库作为存储数据的方法,建立数据库forecasts.db,并且建立两张表weather_widget和weather_forecast,分别存储显示页面的数据和详细页面的数据.
表2-1详细页面的数据库表weather_forecast的结构
属性
数据类型
说明
_id
integer
自动增加的主键
widgetId
integer
组件的ID号
dayOfWeek
text
周几
low
integer
最低温度
hight
integer
最高温度
icon
text
显示天气的图标
condition
text
未来天气情况
表2—2显示页面的数据库表weather_widget的结构
属性
数据类型
说明
_id
integer
存储Widget组件id
city
text
进行天气信息查询的城市名
updateMilis
text
进行天气信息查询的频率,单位为分/次
isConfigured
text
是否设置
postalCode
text
城市标记
forecastDate
integer
预报日期
condition
text
当前天气情况
tempF
integer
最高温度
tempC
integer
最低温度
humidity
text
当前湿度
icon
text
天气图标
windCondition
text
风向风速情况
lastUpdateTime
integer
最后一次更新时间
2.4功能模块设计
从功能需求上分析可以看出,整个应用程序应划分为4个模块,分别是程序启动、用户界面、后台服务和数据库适配器,各模块之间的关系如图2—1所示.
图2—1各功能模块间的关系
从模块结构图中不难看出,后台服务是整个应用程序的核心,主要是“数据获取模块",负责周期性的从Google获取天气信息.后台服务在程序启动时就由AppWidgetProvider启动,也可由用户界面通过startService()进行启动,启动后的后台服务将一直保持运行状态.
用户界面是从数据库中获取天气信息,而没有直接通过网络访问Google的天气数据。
这样设计,一方面可以避免因网络通信不畅而造成界面失去响应;另一方面,后台服务可以及时更新数据,以保证数据的准确性。
数据库适配器封装了所有对SQLite数据库操作的方法,用户界面和后台服务会调用它来实现对数据库的操作.
第3章项目功能描述
3.1系统主要功能
本软件要完成在android手机上实现天气的即时预报。
所涉及的功能有:
1.启动程序后可以进行城市、更新频率的设置;
2。
可以通过图片和文字显示当前和未来的天气状况,包括温度、湿度、风向和雨雪情况等。
使用效果图实现与相应天气的结合。
3.这些天气数据是通过后台服务获取的,这个后台服务可以按照一定的时间间隔,通过Google提供的公共接口获取天气预报信息,并将天气信息保存在本地数据库中.
3。
2系统各模块具体实现
3。
2。
1文件结构与用途
在程序开发阶段,首先确定“Android手机天气预报软件”的工程名为ty-weather,据程序模块设计的内容,建立ty-weather工程.工程源代码的结构如图3—1所示。
图3-1ty-weather工程的源代码文件结构
为了使源代码文件的结构更加清晰,Weather工程设置了多个命名空间,分别用来保存用户界面、数据库、后台服务和工具实体的源代码文件。
源代码文件的名称以及说明如表3—1所示。
表3-1ty—weather工程的文件用途说明
包名称
文件名
说明
com。
ty.weather
ConfigureActivity.java
“设置页面”的Activity
com.ty.weather
DetailForecastActivity.java
“详细页面”的Activity
com。
ty.weather
ForecastProvider。
java
天气预报相关数据提供者,操作数据库
com.ty.weather
ForecastService.java
后台进程服务
com。
ty.weather
ForecastTimeService.java
后台时间服务
com。
ty.weather
ForecastWidget。
java
实现AppWidget组件,并启动服务
com。
ty。
weather
WebServiceHelper。
java
网络数据获取模块
com。
ty.weather。
util
ForecastEntity。
java
未来天气信息的类
com。
ty.weather。
util
ForecastUtil。
java
天气信息工具类
com.ty.weather。
util
WidgetEntity.java
当前天气信息的类
Android的资源文件保存在/res的子目录中。
其中、/res/anim目录中保存的是产生动画效果的XML文件,/res/drawable/目录中保存的是图像文件,/res/values目录中保存的是用来自定义字符串和颜色的文件,/res/xml目录中保存的是XML格式的数据文件.所有在程序开发阶段可以被调用的资源都保存在这些目录中,具体每个资源文件的用途可以参考表3-2:
表3-2资源文件名称与用途
资源目录
文件
说明
Anim
rotatecurrentweather。
xml
渐变透明度动画效果
translatecloudleft。
xml
画面转换位置移动动画效果(从左至右)
translatecloudright.xml
画面转换位置移动动画效果(从右至左)
translaterain01。
xml
画面转换位置移动动画效果(从上至下)
translaterain02.xml
画面转换位置移动动画效果(从上至下)
translaterain03.xml
画面转换位置移动动画效果(从上至下)
translaterain04。
xml
画面转换位置移动动画效果(从上至下)
translaterain05。
xml
画面转换位置移动动画效果(从上至下)
drawable
cloudy.png
这个文件夹里是工程里所用的图片,如有表示天气状况、数字等,此处不赘述。
dots。
png
number_7_tahoma.png
weather_sunny.png
layout
configure.xml
设置城市、天气更新频率的布局
weather.xml
“显示页面"的布局
detail。
xml
“详细显示”页面上边的显示当前天气的布局
detailitems。
xml
“详细显示”页面下边的显示未来天气的布局
values
color.xml
保存颜色的XML文件
strings.xml
保存字符串的XML的文件
xml
weatherwidget。
xml
AppWidget的属性文件
3.2。
2数据提供者
数据提供者ForecastProvider继承ContentProvider,是在应用程序间共享数据的一种接口机制。
应用程序在不同的进程中运行,因此,数据和文件在不同的应用程序之间是不能够直接进行访问
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Android 手机 天气预报 项目 报告