版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
项目实战—天气预报12.1本章导读12.2制定计划12.3需求分析12.4软件设计12.5程序编码12.6软件的后期测试与维护
12.1本章导读
在上一章中,我们做了一个本地化的软件——短信提醒软件来复习以前所学习的内容,并且进行了一个整合。因为该软件在网络部分涉及较少,仅有一个检查更新的功能,所以在本章中,我们再通过一个网络方面的实战项目,来整合网络相关的功能模块。这个项目我们选择天气预报软件,因为中国天气网上有公开的接口,所以可以直接获取相关数据进行解析。
12.2制定计划现在市场上存在很多天气预报相关的软件。我们为什么还要做一个天气预报软件呢?请看如下调查结果:应用商店中搜索天气预报软件的数量:数百个。天气预报软件的用户需求:50%。用户对于当前天气预报的满意程度:40%。用户不满意的原因:软件过于臃肿,有很多没必要的功能;软件消耗大量的流量;软件占用内存过高,导致手机无法正常工作;经常弹出广告;耗电高等。
通过以上数据,可以发现用户对于天气预报类的软件的需求是有的,但是用户普遍不满意当前的软件,究其原因,是现在的天气预报软件过于复杂,有很多用户不会去使用的功能。用户想要的仅仅是一个可以随时查看天气的软件而已。发现其他软件的痛点,那我们可以从这里开始,着手做一个天气预报软件。
12.3需求分析
直接来分析其功能性的需求。(1)作为天气预报软件,其核心功能便是显示天气预报,因此,获取天气数据并进行显示是必需的。(2)用户可以自由选择查看某个城市的天气,而不是查看所有城市或者固定的某个地方。
(3)用户在选择某一个城市的时候会记住该城市的位置,下次打开的时候默认显示该城市的天气信息,并且用户可以选择其他城市进行切换。
(4)为了使软件不过于单调,应该为不同的天气添加一些动画效果。虽然我们计划做一个简单的软件,但软件过于简单,很难吸引用户,因此需要在界面上做一些特效吸引用户,为不同的天气匹配一些不同的动画效果。
天气预报界面流程图如图12-1所示。图12-1天气预报界面流程图
12.4软件设计
在获取天气信息的时候,需要选择城市,但是不能每次都花费流量从网络上获取城市列表,城市毕竟是一个趋于稳定的数据,很少会有变动的情况。因此,在第一次使用程序的时候,可以使用数据库加载省份列表并保存到数据库中,选择某个省份的时候再去加载该省份的城市列表并保存,当第二次选择省份或者已保存省份下的某个城市的时候就不用再去网络加载那些数据了,这样既节省了流量,还节省了电量,而且还可以加快加载的速度,对用户的体验是非常好的。
此信息是xml文件,解析此xml文件,可以得到各个省份的相关信息。那么省份下城市的信息应该怎样获取呢?根据接口文档,获取某个省份下城市信息的方式是通过省份名称获得的,如:/wmaps/xml/gansu.xml可以得到甘肃省各个城市的天气信息,再往下可以通过市名获取该市下所有县区的天气信息。
给用户进行显示的时候,只需要显示quName;获取天气数据的时候,则通过pyName进行获取。据此,可以创建两个实体的E-R图,如图12-2所示。图12-2省份城市实体属性图
根据此关系图,可以创建两张数据表,如表12-1和表12-2所示。
12.5程序编码
1.数据库相关类和表的创建第一步做的就是创建数据库和表,先保证拥有数据以后,才能进行后续工作的开发。创建MyOpenDBHelper类进行表的创建,根据E-R分析结果需创建两张表。
2.获取全国省市数据
创建好数据库与各表对应的实体以后,可以创建NetUtil类来发送请求,获取网络数据。
3.界面的布局及动画效果
程序吸引用户的核心在于界面效果,所以此处界面及相关效果将是着重讲解的地方。
4.选择城市并显示天气
完成相关动画效果以后,就可以开始设计Activity了。在MainActivity中,需要判断以前是否有过登录记录,如果有,则直接加载登录城市数据,如果没有,则提示用户选择城市。
程序的主界面如图12-3所示。
图12-3程序的主界面
当前选择的城市为兰州,所以默认显示兰州市的天气信息。用户单击右上角的切换城市的按钮则可以切换到选择的城市。
选择城市的时候要先选择省份,选择完省份后才能继续选择城市。两个选择界面一样,故
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/T 44475-2024壮锦
- GB/T 44820-2024超压气球通用要求
- 2025年度新质生产力学习课件
- 美术小书包课件
- 2024年度甲方提供市场调研服务合同标的为00万元人民币
- 2024年度企业厂房买卖合同指南针
- 2024年度股权投资合同标的及投资条件详细说明
- 2024年度融资租赁合同范本(租赁物描述与租金计算)
- 2024年度企业技术开发合同
- 2024年度仓储合同货物损耗责任认定3篇
- 中职数学认识多面体与旋转体(课堂PPT)
- 宇视编解码器产品讲解
- 钛合金项目效益分析报告(模板范本)
- 城市燃气工程监理实施细则
- HydrolabBasic广东水文水利计算软件使用手册
- 三级公共营养师实操复习题
- 淀粉的液化技术(完整版)
- 校园台球厅创业计划书
- 全等三角形评课记录观课报告(共1页)
- 实验室试剂管理及实验用水
- 8D培训课件(共43页).ppt
评论
0/150
提交评论