当前位置:文档之家› 基于Android平台的天气预报系统的设计与开发

基于Android平台的天气预报系统的设计与开发

基于Android平台的天气预报系统的设计与开发基于Android平台的天气预报系统的设计与开发摘要:安卓是谷歌于2008年推出的一个智能手机操作系统,其独特的设计模式使得开发手机软件变得非常简单。

该论文介绍了一款安卓天气预报的设计与实现过程。

用户可以通过主界面选择城市来获得包括风力、风向、紫外线强度等的天气信息。

基于手机的天气预报系统能够使用户对于各地的天气情况实时掌握,方便用户的出行和行程安排,具有一定的实用性。

关键字:实时预报,Android,温度检测,定位The Design and Development of Weather Forecast System based on the AndroidⅠSystemAbstract: Android is a Smartphone system launched by Google in 2008, whose unique design pattern makes it easier to develop mobile phone softwares . The paper introduces the process of the design and implementation of a Android weather forecast system. Users can choose a city what he likes from the home screen to get access to the weatherinformation ,including wind,winddirection,strong of ultraviolet light and soon.Weather forecast system based on mobile phone enables users to take the real-time control of weather conditions of all parts,thus bringing great convenience to the user's travel and travel arrangements, and has a certain practicalityKeywords: real-time forecast, Android , Temperature detection , location毕业论文(设计)原创性声明本人所呈交的毕业论文(设计)是我在导师的指导下进行的研究工作及取得的研究成果。

据我所知,除文中已经注明引用的内容外,本论文(设计)不包含其他个人已经发表或撰写过的研究成果。

对本论文(设计)的研究做出重要贡献的个人和集体,均已在文中作了明确说明并表示谢意。

作者签名:日期:毕业论文(设计)授权使用说明本论文(设计)作者完全了解**学院有关保留、使用毕业论文(设计)的规定,学校有权保留论文(设计)并向相关部门送交论文(设计)的电子版和纸质版。

有权将论文(设计)用于非赢利目的的少量复制并允许论文(设计)进入学校图书馆被查阅。

学校可以公布论文(设计)的全部或部分内容。

保密的论文(设计)在解密后适用本规定。

作者签名:指导教师签名:日期:日期:注意事项1.设计(论文)的内容包括:1)封面(按教务处制定的标准封面格式制作)2)原创性声明3)中文摘要(300字左右)、关键词4)外文摘要、关键词5)目次页(附件不统一编入)6)论文主体部分:引言(或绪论)、正文、结论7)参考文献8)致谢9)附录(对论文支持必要时)2.论文字数要求:理工类设计(论文)正文字数不少于1万字(不包括图纸、程序清单等),文科类论文正文字数不少于1.2万字。

3.附件包括:任务书、开题报告、外文译文、译文原文(复印件)。

4.文字、图表要求:1)文字通顺,语言流畅,书写字迹工整,打印字体及大小符合要求,无错别字,不准请他人代写2)工程设计类题目的图纸,要求部分用尺规绘制,部分用计算机绘制,所有图纸应符合国家技术标准规范。

图表整洁,布局合理,文字注释必须使用工程字书写,不准用徒手画3)毕业论文须用A4单面打印,论文50页以上的双面打印4)图表应绘制于无格子的页面上5)软件工程类课题应有程序清单,并提供电子文档5.装订顺序1)设计(论文)2)附件:按照任务书、开题报告、外文译文、译文原文(复印件)次序装订3)其它目录1.绪论 (1)1.1系统开发的目的11.2系统开发工具11.3 项目需求分析 (1)2.项目设计 (2)2.1 系统架构图 (2)2.2 webservice网络拓扑图 (2)2.3 项目框架 (3)3.Google Android平台的相关理论 (4)3.1 Google Android移动平台下的应用研究 (4)3.2 Android关键技术研究 (5)4.天气预报程序设计 (6)4.1 Android的UI界面的实现 (6)4.2欢迎界面的实现 (8)4.3 主界面功能实现 (9)4.4数据存储 (29)5.系统测试 (32)5.1测试目的 (32)5.3 测试内容和结果 (32)5.4 测试结果 (35)6.结束语 (35)致谢 (36)参考文献 (37)1.绪论1.1系统开发的目的由于智能手机的快速普及,智能操作系统在手机市场占据了很大一部分,其中以Andriod和iOS最为流行。

为了让智能手机用户能够随时随地查询互联网所提供的信息,一种非常高效的方法就是将网络系统的功能扩展到智能手机终端上,让手机能够通过移动网络访问Web网站并处理各种各样的业务。

由于在大学学习过java语言,并且Andriod系统是基于java语言开发的,因此想开发一套基于Andriod平台的3G手机气象软件,并从网上获取天气预报信息。

Android 平台的天气预报软件的开发可以进一步扩大气象信息的覆盖面,让广大Android 手机用户能够在第一时间获取最新的天气预报信息,以便提前预防,方便出行。

同时,把气象灾害造成的损失降到最低,也可以提高公共服务质量,更好的发挥气象事业对经济社会发展的现实性作用,有巨大的实用价值。

虽然该技术在Android平台已经比较成熟,但是通过该软件的开发仍然能帮助我更好的认识Android系统的工作原理。

1.2系统开发工具(1)win7系统jdk 1.8(2)Eclipse标准版及ADT插件(3) SensorSimulator(用来模拟安卓手机中的温度传感器)1.3 项目需求分析(1) 系统能够通过手机精确定位全国各个城市未来几天的天气情况(2) 系统具有安全性,独立性,可靠性(3) 系统界面设计优美,符合用户的操作习惯,且在一定程度上节省流量开销2.项目设计2.1 系统架构图图2.1 系统构架图2.2 webservice网络拓扑图本系统是基于提供webservice服务的网站接收数据,然后对数据进行解析,从中找到需要的数据。

如图2.2所示为提供webservice服务的网站网络拓扑图图 2.2 网络拓扑图2.3 项目框架图2.3 工程目录其中GPSActivity用来处理GPS定位信息,WeatherWebServiceActivity为天气预报主界面类,WebServiceUtil用来处理从网站中接收的数据,ConverUtil为处理经纬度转换的类,LoginActivity是处理登录界面的类。

3.Google Android平台的相关理论3.1 Google Android移动平台下的应用研究Android系统提供给应用程序开发者的只是一个框架,在该平台下开发应用程序必须要遵守这个框架原则。

我们开发的应用程序其实就是在这个框架上进行拓展,下面介绍一下android这个框架所提供的功能。

Android.app:提供最上层的程序模型和运行环境Android.content:包含对设备上的数据进行访问和发布的类Android.database:Android系统内置一个轻量级的SQLite数据库Android.graphics:底层的图形库,包含颜色过滤,画布,矩形,点,可以用来将它们直接绘制到屏幕上。

: 提供用来帮助访问网络的类。

Android.location:定位以及与定位有关的一些类。

Android.util:涉及到一些实用性的方法,例如对时间和日期进行操作。

Android.media: 提供一些管理多种视频,音频的媒体接口。

Android.os:提供了系统服务,IPC机制和消息传输。

Android.opngl:提供了OpenGL的工具。

Android.provider:提供了访问Android中的内容提供者的类。

Android.telephony:提供用来与拨打电话相关的API交互的类。

Android.view: 提供最基本的用户界面接口框架。

Addroid.webkit:提供用来调用默认浏览器的接口。

Android.widget包含各种UI元素,可以在应用程序的布局中使用。

3.2 Android关键技术研究Android平台是基于java语言开发的,其中主要由四大组建构成,分别为:Activity、Service、Broadcast Receiver、Content Provider。

1.Activity Activity就是一个用户界面,每一个Activity就是一个独立的界面。

比如照相机程序,实现一个拍照的Activity,短信也是一个Activity,拨号界面也是一个Activity等等,这些Activity都是相互独立的,但组合在一起它们就变成一个完整功能的应用程序了。

我们可以把Activity理解成java中的JFrame控件,不过它与JFrame的区别在于:java中的JFrame本身可以设置布局管理器,不断的向JFrame中添加组件,但Activity只能通过setContentView(layout)方法在主界面显示布局。

2.Service Service与Activity的地位是相同的,它也代表一个独立的Android组件,Service与Activity的区别在于:Service通常在后台运行,它不需要与用户进行交互,因此Service没有用户界面。

与Activity需要继承Activity 的基类一样,Service同样也需要继承Service基类。

当一个Service组件在后台运行起来后,它就会和Acitivity同样也有自己的生命周期。

Service组件通常用于为一些不需要界面但是又必须在后台运行的程序提供服务,比如音乐或者音频播放软件。

3. Broadcast Receiver中文意思是广播接收者,顾名思义它主要就是用来接收来自广播和系统中的应用程序发送的消息。

相关主题