当前位置:文档之家› 基于Android天气预报课程设计

基于Android天气预报课程设计

教学单位计算机学院学生学号************Android课程设计题目Android天气预报课程设计学生姓名王能松专业名称软件工程指导教师祝攀2016年11月15日目录Android课程设计 (1)1 绪论 (2)2背景 (2)3研究课题 (2)4研究目的和意义 (3)5开发平台和环境 (3)6需求分析 (4)7 功能分析 (10)7.1模块划分 (10)7.2具体功能实现 (10)7.3系统E-R图 (11)8设计小结 (11)9 参考文献 (12)1 绪论Android是一种基于Linux的自由及开放源代码的操作系统,主要使用于移动设备,如智能手机和平板电脑,由Google公司和开放手机联盟领导及开发。

Android操作系统最初由Andy Rubin开发,主要支持手机。

2005年8月由Google 收购注资。

2007年11月,Google与84家硬件制造商、软件开发商及电信营运商组建开放手机联盟共同研发改良Android系统。

随后Google以Apache开源许可证的授权方式,发布了Android的源代码。

第一部Android智能手机发布于2008年10月。

Android逐渐扩展到平板电脑及其他领域上,如电视、数码相机、游戏机等。

2011年第一季度,Android在全球的市场份额首次超过塞班系统,跃居全球第一。

2013年的第四季度,Android平台手机的全球市场份额已经达到78.1%。

2012年7月美国科技博客网站BusinessInsider评选出二十一世纪十款最重要电子产品,Android操作系统和iPhone等榜上有名。

2013年09月24日谷歌开发的操作系统Android在迎来5岁生日,全世界采用这款系统的设备数量已经达到10亿台。

2014第一季度Android平台已占所有移动广告流量来源的42.8%,首度超越iOS。

Android的Logo是由Ascender公司设计的,诞生于2010年,其设计灵感源于男女厕所门上的图形符号,于是布洛克绘制了一个简单的机器人,它的躯干就像锡罐的形状,头上还有两根天线,Android小机器人便诞生了。

Android 是一个全身绿色的机器人,绿色也是Android的标志。

颜色采用了PMS376C和RGB中十六进制的#A4C639来绘制,这是Android操作系统的品牌象徵。

有时候,它们还会使用纯文字的Logo。

2背景天气信息和人们的日常生活息息相关,随着人们活动范围的扩大和出行需要,及时精确的获取天气信息显得越来越重要。

为此,本人设计了天气预报软件,它是一种非常实用的天气信息提供软件,使用方便且功能强大,能提供各方面天气相关信息和贴心的生活指数。

用户可以通过天气预报软件及时获得近期天气的状况和变化,及时做好各方面计划和防御措施3研究课题本次课程设计选择的课题是基于Android天气预报的程序设计,我们知道,现在越来越多的人喜欢出去旅游,而旅游一个重要的前提是有一个好天气,因此,能提前知道天气的变化以及做好准备是非常重要的,因此,开发一款好的天气软件是非常重要的,它能让用户随时随地查询天气信息及天气变化情况,让我们的生活变得更加美好,舒适!4研究目的和意义天气软件是一种非常实用的信息服务,随着智能手机的不断普及,各种智能手机平台下都有各种各样的天气软件。

Android作为现在主流的智能手机之一,自然也需要这方面的软件。

天气关系到人们的日常生活,如告知温暖,方便出行等。

此外,对未来天气的预测还可以帮助人们进行农作物的浇灌、施肥、收割等工作。

基于Android平台的天气软件已经有很多,经过分析,用户第一眼往往是一个软件的外观,一个好看的界面才能让用户以一种爱美之心去尝试,才能进一步了解一个软件的好坏,所以吸引眼球的界面是争取用户的第一步。

因此,界面设计工作对应用程序来说非常重要,在界面上吸引了用户,才能进一步让用户体验应用程序中的功能,使用这个软件。

5开发平台和环境开发应用环境如下:(1)下载Android studioAndroid Studio 是一个Android集成开发工具,基于IntelliJ IDEA. 类似Eclipse ADT,Android Studio 提供了集成的Android 开发工具用于开发和调试。

(2)JDK的安装及系统环境配置。

步骤1、安装JDK选择安装目录,安装过程中会出现两次安装提示。

第一次是安装jdk,第二次是安装jre。

建议两个都安装在同一个ja va文件夹中的不同文件夹中。

(不能都安装在java文件夹的根目录下,jdk和jre安装在同一文件夹会出错)。

步骤2、(1)安装jdk随意选择目录只需把默认安装目录\java之前的目录修改即可。

(2)安装jre→更改→\java之前目录和安装jdk目录相同即可。

注:若无安装目录要求,可全默认设置。

无需做任何修改,两次均直接点下一步。

步骤3、安装完JDK后配置环境变量计算机→属性→高级系统设置→高级→环境变量。

步骤4、系统变量→新建JA V A_HOME变量。

变量值填写jdk的安装目录(本人是E:\Java\jdk1.8.0)。

步骤5、系统变量→寻找Path变量→编辑。

在变量值最后输入%JA V A_HOME%\bin;%JA V A_HOME%\jre\bin;(注意原来Path的变量值末尾有没有;号,如果没有,先输入;号再输入上面的代码)。

步骤6、系统变量→新建CLASS PATH变量。

变量值填写.;%JA V A_HOME%\lib;%JA V A_HOME%\lib\tools.jar(注意最前面有一点)。

系统变量配置完毕。

步骤7、检验是否配置成功运行cmd输入java-version(java和-version之间有空格)。

6需求分析1 能够查询城市的天气情况2 能够进行城市地点切换3 能够系统的显示天气数据及变化信息4 系统数据必须有安全性,独立性和可靠性。

5在线天气数据解析首先,我们从“百度车联网API官网”中获取key,这是我们能否使用百度提供的服务的关键,具体的步骤不详述。

通过这个API我们可以从浏览器端查看获取天气json格式的数据,如下所示:实时天气:1.city "北京"//城市2.cityid "101010100"//城市编码3.temp "17"//当前温度4.WD "东风"//风向5.WS "2级"//风力6.SD "70%"//相对湿度7.WSE "2"//风力8.time "14:20"//更新时间9.isRadar "1"//是否有雷达图1. XML接口/wmaps/xml/china.xml 这个是全国天气的根节点,列出所有的省,其中的pyName字段是各个省XML的文件名,比如北京的是beijing,那就意味着北京的XML地址为/wmaps/xml/beijing.xml 一个省的天气,其中列出该省各个市的数据,北京就列出各个区。

tmp1是最低温低,tmp2是最高温度,url非常重要,我们一会儿再说。

state1和state2是神马转神马,每个数代表一个天气现象。

天气现象非常多,我本想全部分析出来,后来直接放弃了这个想法。

因为我看到了一个城市的天气现象的编码是26...我现在知道的有0.晴 1.多云2.阴6.雨夹雪7.小雨8.中雨13.阵雪14.小雪其中后来发现知道这个没用,这个数字的主要作用是检索图片的!!!2. 图片接口/img/c0.gif /img/b0.gif /m/i/weatherpic/29x20/d0.gif/m2/i/icon_weather/29x20/n00.gif 这个图就是天气现象0(晴)的图片,其他天气现象的图片依此类推。

c打头的图片是20*20像素的,b打头的是50*46像素的,d打头的是反白的图标,29*20像素,n打头的是夜间反白图标,29*20像素,注意这里的文件名是两位数字!也许还有更多的图标,等待大家发掘啦~3. JSON接口真没想到~居然有JSON接口~JSON在iPhone上分析起来要比XML简单很多/data/101010200.html 这个是北京的JSON数据,那个HTML的名字是根据上文XML中的url得到的。

这个JSON中包含了实时数据、7天天气预报、气象指数等丰富的数据国家气象局提供的天气预报接口接口地址:/data/sk/101010100.html/data/cityinfo/101010100.html/data/101010100.html对于第三个接口,返回信息比较全面,也是以json格式提供,格式如下{"weatherinfo": {//基本信息;"city":"北京","city_en":"beijing","date_y":"2012年2月16日", "date":"", "week":"星期四", "fchh":"11", "cityid":"101010100", //摄氏温度"temp1":"2℃~-7℃","temp2":"1℃~-7℃","temp3":"4℃~-7℃","temp4":"7℃~-5℃","temp5":"5℃~-3℃","temp6":"5℃~-2℃",//华氏温度;"tempF1":"35.6℉~19.4℉","tempF2":"33.8℉~19.4℉","tempF3":"39.2℉~19.4℉","tempF4":"44.6℉~23℉","tempF5":"41℉~26.6℉","tempF6":"41℉~28.4℉",//天气描述;"weather1":"晴","weather2":"晴","weather3":"晴","weather4":"晴转多云","weather5":"多云","weather6":"多云转阴",//天气描述图片序号"img1":"0","img2":"99","img3":"0","img4":"99","img5":"0","img6":"99","img8":"1","img9":"1","img10":"99","img11":"1","img12":"2","img_single":"0",//图片名称;"img_title1":"晴","img_title2":"晴","img_title3":"晴","img_title4":"晴","img_title5":"晴","img_title6":"晴","img_title7":"晴","img_title8":"多云","img_title9":"多云","img_title10":"多云","img_title11":"多云","img_title12":"阴","img_title_single":"晴",//风速描述"wind1":"北风3-4级转微风","wind2":"微风","wind3":"微风","wind4":"微风","wind5":"微风","wind6":"微风",//风速级别描述"fx1":"北风","fx2":"微风","fl1":"3-4级转小于3级","fl2":"小于3级","fl3":"小于3级","fl4":"小于3级","fl5":"小于3级","fl6":"小于3级",//今天穿衣指数;"index":"冷","index_d":"天气冷,建议着棉衣、皮夹克加羊毛衫等冬季服装。

相关主题