基于Android平台的天气预报毕业论文.docx

上传人:b****4 文档编号:3143037 上传时间:2022-11-18 格式:DOCX 页数:26 大小:739.30KB
下载 相关 举报
基于Android平台的天气预报毕业论文.docx_第1页
第1页 / 共26页
基于Android平台的天气预报毕业论文.docx_第2页
第2页 / 共26页
基于Android平台的天气预报毕业论文.docx_第3页
第3页 / 共26页
基于Android平台的天气预报毕业论文.docx_第4页
第4页 / 共26页
基于Android平台的天气预报毕业论文.docx_第5页
第5页 / 共26页
点击查看更多>>
下载资源
资源描述

基于Android平台的天气预报毕业论文.docx

《基于Android平台的天气预报毕业论文.docx》由会员分享,可在线阅读,更多相关《基于Android平台的天气预报毕业论文.docx(26页珍藏版)》请在冰豆网上搜索。

基于Android平台的天气预报毕业论文.docx

基于Android平台的天气预报毕业论文

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

摘要:

安卓是谷歌于2008年推出的一个智能手机操作系统,其独特的设计模式使得开发手机软件变得非常简单。

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

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

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

关键字:

实时预报,Android,温度检测,定位

TheDesignandDevelopmentofWeatherForecastSystembasedontheAndroidSystem

Abstract:

AndroidisaSmartphonesystemlaunchedbyGooglein2008,whoseuniquedesignpatternmakesiteasiertodevelopmobilephonesoftwares.ThepaperintroducestheprocessofthedesignandimplementationofaAndroidweatherforecastsystem.Userscanchooseacitywhathelikesfromthehomescreentogetaccesstotheweatherinformation,includingwind,winddirection,strongofultravioletlightandsoon.Weatherforecastsystembasedonmobilephoneenablesuserstotakethereal-timecontrolofweatherconditionsofallparts,thusbringinggreatconveniencetotheuser'stravelandtravelarrangements,andhasacertainpracticality

Keywords:

real-timeforecast,Android,Temperaturedetection,location

 

1.绪论

1.1系统开发的目的

由于智能手机的快速普及,智能操作系统在手机市场占据了很大一部分,其中以Andriod和iOS最为流行。

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

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

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

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

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

1.2系统开发工具

(1)win7系统jdk1.8

(2)Eclipse标准版及ADT插件

(3)SensorSimulator(用来模拟安卓手机中的温度传感器)

1.3项目需求分析

(1)系统能够通过手机精确定位全国各个城市未来几天的天气情况

(2)系统具有安全性,独立性,可靠性

(3)系统界面设计优美,符合用户的操作习惯,且在一定程度上节省流量开销

2.项目设计

2.1系统架构图

 

图2.1系统构架图

2.2webservice网络拓扑图

本系统是基于提供webservice服务的接收数据,然后对数据进行解析,从中找到需要的数据。

如图2.2所示为提供webservice服务的网络拓扑图

图2.2网络拓扑图

2.3项目框架

图2.3工程目录

其中GPSActivity用来处理GPS定位信息,WeatherWebServiceActivity为天气预报主界面类,WebServiceUtil用来处理从中接收的数据,ConverUtil为处理经纬度转换的类,LoginActivity是处理登录界面的类。

3.GoogleAndroid平台的相关理论

3.1GoogleAndroid移动平台下的应用研究

Android系统提供给应用程序开发者的只是一个框架,在该平台下开发应用程序必须要遵守这个框架原则。

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

Android.app:

提供最上层的程序模型和运行环境

Android.content:

包含对设备上的数据进行访问和发布的类

Android.database:

Android系统置一个轻量级的SQLite数据库

Android.graphics:

底层的图形库,包含颜色过滤,画布,矩形,点,可以用来将它们直接绘制到屏幕上。

A:

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

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.2Android关键技术研究

Android平台是基于java语言开发的,其中主要由四大组建构成,分别为:

Activity、Service、BroadcastReceiver、ContentProvider。

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

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

我们可以把Activity理解成java中的JFrame控件,不过它与JFrame的区别在于:

java中的JFrame本身可以设置布局管理器,不断的向JFrame中添加组件,但Activity只能通过setContentView(layout)方法在主界面显示布局。

2.ServiceService与Activity的地位是相同的,它也代表一个独立的Android组件,Service与Activity的区别在于:

Service通常在后台运行,它不需要与用户进行交互,因此Service没有用户界面。

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

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

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

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

在Android中广播的用处非常广泛,例如当开机后会自动产生一条广播,接收到这条广播后系统就能及时的做出提示和保存数据等操作;当电池电量低的时候系统也会产生一条广播,这样就能及时提示用户进行充电等的操作。

本质上BroadcastReceiver就是一种全局的监听器,我们用它来监听系统向应用程序发送的广播消息。

基于以上所述我们可以用它非常方便的实现系统中不同组件之间的相互通信。

4.ContentProvider它是不同APP之间进行交换数据的核心的API,ContentProvider在系统中以某种URI的形式对外提供数据,允许其他应用查询或者修改数据;其他应用程序使用ContentResolver根据URI去访问和操作指定的数据。

事实上这里有一个简单的类比:

可以把ContentProvider看作安卓系统部提供的一个,这个以固定的URI对外提供服务;而ContentResolver可以当成系统部的HttpClient,它可以向指定的URI发送请求,这种请求最后委托给ContentProvider处理,从而实现对部数据进行操作。

3.3小结

本单元主要概括了关于Android平台的三个方面的容:

1.Googleandroid移动平台的概述2.googleandroid移动平台开发过程的研究3.Googleandroid移动平台下的应用研究,概要的介绍了Googleandroid移动平台相关知识,4.介绍了Android平台下的四大组件的相关容。

通过本章我们对Googleandroid移动平台有初步的认识和了解,为后面的开发做了坚实的基础。

4.天气预报程序设计

4.1Android的UI界面的实现

在Android中用户界面都是布局在XML文件中的。

这些XML文件放在工程/res/layout下面。

这对以前熟悉java可视化编程的人来说可能有些不太习惯。

可能有人疑问为什么要把布局文件放在XML文件里呢?

其实有过web基础的都应该知道mvc框架,这是一种用于开发的非常优秀的思想,在安卓系统中,安卓开发人员把用户界面放在XML文档中定义,这样就可以让XML文档专门负责用户UI界面设置,而java程序专门负责业务实现,从而降低程序的耦合,便于程序的维护和扩展,符合mvc设计思想。

在XML中Android开发人员放置了很多我们经常用到的一些组件,比如view,Button,EditText等,通过这些系统提供的控件,我们可以开发出我们想要的程序界面来。

Layout是一类特殊的ViewGroup控件,它们本身并不显示任何的容,存在的惟一原因就是其中的部结构,能够更好地摆放它的子控件。

比如Linearlayout(线性布局),可将子控件按水平或垂直方向按顺序排列下去;Tablelayout(表格布局),可以将子控件按照表格的形式,一枚枚放置好;Relativelayout(相对布局),实际应用中这个布局更灵活,它可以设定各个控件之间的对齐和排列关系,适合编写复杂的界面。

有了Layout的存在,控件和控件之间不再是独立地存在,而是更有机地结合在一起,设定起来也更为方便。

在本程序中布局文件我一共用到了如图4.1所示的布局文件

图4.1布局文件图

其中city_detail用来显示城市简介的信息,city_environment用来显示当前所在城市的生活指数信息,city_layout用来显示用来选择城市布局,content_layout用来显示天气情况,gps_view用来显示gps定位信息,login用来显示登录欢迎界面,main包含了用来切换的三个界面,

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

当前位置:首页 > PPT模板 > 商务科技

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1