Android天气预报软件毕业设计答辩PPt.ppt

上传人:仙人指路1688 文档编号:2908909 上传时间:2023-03-02 格式:PPT 页数:18 大小:2.97MB
返回 下载 相关 举报
Android天气预报软件毕业设计答辩PPt.ppt_第1页
第1页 / 共18页
Android天气预报软件毕业设计答辩PPt.ppt_第2页
第2页 / 共18页
Android天气预报软件毕业设计答辩PPt.ppt_第3页
第3页 / 共18页
Android天气预报软件毕业设计答辩PPt.ppt_第4页
第4页 / 共18页
Android天气预报软件毕业设计答辩PPt.ppt_第5页
第5页 / 共18页
点击查看更多>>
资源描述

《Android天气预报软件毕业设计答辩PPt.ppt》由会员分享,可在线阅读,更多相关《Android天气预报软件毕业设计答辩PPt.ppt(18页珍藏版)》请在三一办公上搜索。

1、,基于Android天气预报软件的设计与实现,专业班级:软件班学生姓名:指导老师:,1 项目背景,2 概要设计,3 详细设计,4 测试及其他,开发背景,目的及意义,可行性分析,平台介绍,系统流程图,主界面,更换城市界面,测试,总结,功能框架,数据库,致谢,内容简介,开发背景,1Android是一种开放源码操作系统。22013年,Android在全球市场份达到75%。3Android在中国的前景十分广阔。4随着人们生活节奏的加快,精确地掌握每天的天气情况已成为一个人早上出门前的必修课。,目的及意义,1提供准确的实时天气数据。2进一步扩大天气信息的覆盖面。3完善公共服务体系,更好地发挥气象事业对经

2、济社会发展的现实性作用。,平台介绍,Android平台的基本框架如下:,在Android系统中,为我们提供了四大基本组件,每个组件是一个视图,Activity,ContentProvider是可见的视图,Service和BroadcastReceiver是不可见的,它们只在系统的后台运行。,在Android平台上,集成了一个嵌入式关系型数据库SQLite。它占用的资源非常低,同时能够跟很多程序语言相结合,处理速度非常快。,可行性分析,经济可行性,技术可行性,法律可行性,总结,操作可行性,需求低平台成熟周期短,环境完善人员多能掌握核心,设备充足操作简便,遵守法规绿色环保,综上,本系统可以进行研发

3、,系统流程图,本系统的流程比较清晰,首先天气数据每更新一次,系统就会通过HTTP向指定的地址发出数据请求,若请求成功,则返回天气数据并通过JSON格式来解析数据,最终把解析到的数据显示在手机界面上,这样就完成了一次天气数据的更新。,功能框架,软件的功能框架如上图所示:实时天气信息:用户可以查看指定城市的实时天气,包括温度、湿度、风力和穿衣指数等;未来三天预报:用户可以查看到未来三天的天气情况;更换城市:用户可以根据自己的实际情况选择自己想要查询的城市。自动定位:可以获得当前用户所在的城市。,主界面,该界面综合使用了Android平台的各种常用组件,包括Button、TextView、Image

4、View等,界面的顶部显示当前选择的城市和天气数据刷新按钮,用户可以根据自己的需要随时通过该按钮来刷新数据,右边为一个“更换城市”按钮,用户可以通过该按钮来更改其它城市。首先,进入的是界面的主体部分,显示了当前城市的实时天气情况,包括时间、天气、温度、风力和湿度等信息。其次,显示了未来三天的天气情况和穿衣指数提醒。最后,显示了当前天气数据的发布时间和最近一次刷新时间。,private void SetWeatherJson(String sNowWeatherString,String s6Detil)try jsonObject=new JSONObject(sNowWeatherStrin

5、g);jsonObject=jsonObject.getJSONObject(weatherinfo);tvCityName.setText(jsonObject.getString(city);tvNowTemp.setText(jsonObject.getString(temp)+);tvTodayWindSD.setText(jsonObject.getString(WD)+jsonObject.getString(WS)+湿度:+jsonObject.getString(SD);/风力jsonObject=new JSONObject(s6Detil);jsonObject=jsonO

6、bject.getJSONObject(weatherinfo);sdate_y=jsonObject.getString(date_y);tvIssueTime.setText(sdate_y.substring(5)+jsonObject.getString(fchh)+:00);/设置发布时间tvToday.setText(sdate_y+jsonObject.getString(week);/设置今天日期String img_title=jsonObject.getString(img_title1);/天气图标int weather_icon=getWeatherBitMapReso

7、urce(img_title);imageView1.setImageResource(weather_icon);tvPrompt.setText(jsonObject.getString(index_d);/穿衣提醒,主界面核心代码:,更换城市界面,该界面包括两部分,分别是热门城市和所有城市,热门城市模块列举了国内主要的大城市,目的是方便用户选择,而所有城市则是显示了国内所有的城市数据,用户可以先选择省份,接着选择城市,最后选择县(区)这种显示来选择。选择完毕后可以通过确定按钮来提交设置。,更换城市界面核心代码:,public List getCitSet(int pro_id)cityL

8、ist.clear();/打开数据库SQLiteDatabase db1=SQLiteDatabase.openOrCreateDatabase(DATABASE_PATH+dbName,null);Cursor cursor=db1.query(citys,null,province_id=+pro_id,null,null,null,city_num);List cityListTemp=new ArrayList();while(cursor.moveToNext()String cityid=cursor.getString(cursor.getColumnIndexOrThrow(c

9、ity_num);String cityn=cursor.getString(cursor.getColumnIndexOrThrow(name);cityList.add(new CityInfo(cityid,cityn);for(int i=0;i cityList.size();i+)if(!cityList.get(i).getName().contains(.)cityListTemp.add(new CityInfo(cityList.get(i).getCity_num(),cityList.get(i).getName();cursor.close();db1.close()

10、;return cityListTemp;,自动定位,调用安卓SDK的定位中的LocationClient和BDLocation等类以及BDLocationListener等接口,通过gps和网络来返回百度坐标系的定位结果。,自动定位功能的核心代码:,public class MyLocationListenner implements BDLocationListener Overridepublic void onReceiveLocation(final BDLocation location)dialog.dismiss();mIsStart=false;if(location=nul

11、l)toastUtil.show(定位失败);return;AlertDialog.Builder build=new AlertDialog.Builder(WeatherChangeCityActivity.this);build.setTitle(定位成功).setMessage(当前城市:+location.getProvince()+-+location.getCity()+-+location.getDistrict().setPositiveButton(确定,new DialogInterface.OnClickListener()Overridepublic void onC

12、lick(DialogInterface dialog,int which)CityInfo cityInfo=getCityByLoc(location.getCity(),location.getDistrict();,数据库,Android平台上,集成了一个嵌入式关系型数据库SQLite。它占用资源非常的低,可能几百K就够了。它能够支持Windows/Linux/Unix等主流的操作系统,同时能够跟很多程序语言相结合,比如 Tcl、C#、PHP、Java等,还有ODBC接口,同样比Mysql、PostgreSQL这两款数据库管理系统快。,本数据库支持功能如下:1.自动建表;2.自动支持增

13、删改操作;3.查询方式灵活;4.查询结果对象化;5.查询结果灵活:查询结果支持对象化,也支持结果为List形式。,测试,本测试我们测试的是主界面、更换城市界面和网络接口这三个模块,测试目的是验证修改城市后系统能否自动更新天气数据,从而验证系统功能的完整性,首先我们点击主界面右上角的“更改城市”按钮,把当前城市修改成昆山,点击确定按钮后系统当前的城市已经切换到昆山了,并且当前显示的天气数据也是昆山的数据,所以这三个模块的功能及测试结果都是是正常的。,总结,本次毕业设计是我在大学学习的最后一个阶段,这三个多月以来,从拿到题目的毫无头绪,到在网上查找各种相关资料,再到一个个功能逐步实现,最后终于能完整连贯的呈现,这中间经历了种种磨难与挣扎,当然也有兴奋与喜悦相间。虽然该天气预报软件的基本功能已经实现,可以实时更新天气数据并且可以选择自己需要的城市的天气信息。但是由于本人水平有限,本软件也存在许多可以改进的地方,敬请谅解,欢迎指正。,Thank you!,感谢理工大软件学院对我的培养!感谢各任课老师对我的教导!感谢赵老师对我的指导!感谢各位评审的审议!,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号