




已阅读5页,还剩25页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于 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 weather information ,including wind,wind direction,strong of ultraviolet light and so on.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 users travel and travel arrangements, and has a certain practicalityKeywords: real-time forecast, Android , Temperature detection , location目录1.绪论 .11.1 系统开发的目的 .11.2 系统开发工具 .11.3 项目需求分析 .12.项 目设计 .22.1 系统架构图 .22.2 webservice 网络拓扑图 .22.3 项目框架 .33 Google Android 平台的相关理论 .33.1 Google Android 移动平台下的应用研究 .33.2 Android 关键技术研究 .44.天气预报程序设计 .64.1 Android 的 UI 界面的实现 .64.2 欢迎界面的实现 .74.3 主界面功能实现 .84.4 数据存储 .195.系 统测试 .205.1 测试目的 .205.3 测试内容和结果 .205.4 测试结果 .226.结 束语 .23致谢 .24参 考 文 献 .24基于 Android 平台的天气预报系统的设计与开发11.绪论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) 系统界面 设计优美,符合用户的操作习惯,且在一定程度上节省流量开销22.项目设计2.1 系统架构图图 2.1 系统构架图2.2 webservice 网络拓扑图本系统是基于提供 webservice 服务的网站接收数据,然后对数据进行解析,从中找到需要的数据。如图 2.2 所示为提供 webservice 服务的网站网络拓扑图点击图标进入系统系统显示天气预报主界面点击城市下拉列表选择想要查询的城市跳转到该城市的天气信息界面界面3图 2.2 网络拓扑图2.3 项目框架图 2.3 工程目录其中 GPSActivity 用来处理 GPS 定位信息,WeatherWebServiceActivity 为天气预报主界面类,WebServiceUtil 用来处理从网站中接收的数据 ,ConverUtil 为处理经纬度转换的类,LoginActivity 是处理登录界面的类。43Google Android 平台的相关理论3.1 Google Android 移动平台下的应用研究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 的工具。Avider:提供了访问 Android 中的内容提供者的 类。Android.telephony:提供用来与 拨打电话相关的 API 交互的类。Android.view: 提供最基本的用户界面接口框架。Addroid.webkit:提供用来调用默认浏览器的接口。Android.widget 包含各种 UI 元素,可以在应用程序的布局中使用。53.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 中文意思是广播接收者,顾名思义它主要就是用来接收来自广播和系统中的应用程序发送的消息。在 Android 中广播的用处非常广泛,例如当开机后会自动产生一条广播,接收到这条广播后系统就能及时的做出提示和保存数据等操作;当电池电量低的时候系统也会产生一条广播,这样就能及时提示用户进行充电等的操作。本质上 Broadcast Receiver 就是一种全6局的监听器,我们用它来监听系统向应用程序发送的广播消息。基于以上所述我们可以用它非常方便的实现系统中不同组件之间的相互通信。 4Content Provider 它是不同 APP 之间进行交 换数据的核心的 API , Content Provider 在系统中以某种 URI 的形式对外提供数据 ,允许其他应用查询或者修改数据;其他应用程序使用 Content Resolver 根据 URI 去访问和操作指定的数据。事实上这里有一个简单的类比:可以把 Content Provider 看作安卓系统内部提供的一个网站,这个网站以固定的 URI 对 外提供服务;而 Content Resolver 可以当成系统内部的 HttpClient,它可以向指定的 URI 发送请求,这种请求最后委托给 Content Provider 处理,从而实现对网站内部数据进行操作。3.3 小结本单元主要概括了关于 Android 平台的三个方面的内容:1.Google android移动平台的概述 2.google android 移动平台开发过 程的研究 3.Google android 移动平台下的应用研究,概要的介绍了 Google android 移动平台相关知识,4. 介绍了 Android 平台下的四大组件的相关内容。通过本章我们对 Google android 移动平台有初步的认识和了解,为后面的开发做了坚实的基础。4.天气预报程序设计4.1 Android 的 UI 界面的 实现在 Android 中用户界面都是布局在 XML 文件中的。这些 XML 文件放在工程/res/layout 下面。这对以前熟悉 java 可视化编程的人来说可能有些不太习惯。可能有人疑问为什么要把布局文件放在 XML 文件里呢 ?其实有过 web 基础的都应该知道 mvc 框架,这是一种用于网站开发的非常优秀的思想,在安卓系统7中,安卓开发人员把用户界面放在 XML 文档中定 义,这样就可以让 XML 文档专门负责用户 UI 界面设置,而 java 程序专门负责业务实现,从而降低程序的耦合,便于程序的维护和扩展,符合 mvc 设计思想。在 XML 中 Android 开发人员放置了很多我们经常用到的一些组件,比如view,Button,EditText 等 ,通过这些系统提供的控件,我们可以开发出我们想要的程序界面来。Layout 是一类 特殊的 ViewGroup 控件,它们本身并不 显示任何的内容,存在的惟一原因就是其中的内部结构,能够更好地摆放它的子控件。比如Linearlayout(线性布局) ,可将子控件按水平或垂直方向按顺序排列下去;Tablelayout( 表格布局) ,可以将子控件按照表格的形式,一枚枚放置好;Relativelayout(相对布局 ) ,实际应用中这个布局更灵活
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- d级危房维修施工方案
- 武汉工商学院《形势与政策(四)》2023-2024学年第二学期期末试卷
- 大堂风机拆除施工方案
- 阆中污水管网施工方案
- 南京城市职业学院《概率统计B》2023-2024学年第二学期期末试卷
- 上海出版印刷高等专科学校《矩阵理论与应用》2023-2024学年第二学期期末试卷
- 2025至2031年中国油水舱底漆行业投资前景及策略咨询研究报告
- 斜拉桥桩基础施工方案
- 江西建设职业技术学院《CAD设计》2023-2024学年第二学期期末试卷
- 临时雨污水接驳施工方案
- 《淘宝开网店详解》课件
- 【八年级下册地理中图北京版】期中真题必刷卷B-【期中真题必刷卷】(北京专用)(解析版)
- 钻床安全技术课件
- 新媒体时代农产品品牌营销策略
- 西工大附中2025届高考英语一模试卷含解析
- 《房屋建筑与装饰工程工程量计算规范》课件
- 《支付宝相关功能》课件
- 车队运营中的司机管理策略研究
- 0-3岁婴幼儿感觉统合训练知到智慧树章节测试课后答案2024年秋杭州师范大学
- 新生儿脐部出血的护理
- 实验室的智能化设计与建设
评论
0/150
提交评论