Android平台的气象服务系统
毕业设计(论文)
题 目 基于Android平台的气象服务系统的设计与实现
英文题目Design and Implementation of the meteorological service system based on the Android platform
学生姓名 马龙
学 号 08114112
指导教师 何月顺 职称 教授
专 业 网络工程
...
目 基于Android平台的气象服务系统的设计与实现
英文题目Design and Implementation of the meteorological service system based on the Android platform
学生姓名 马龙
学 号 08114112
指导教师 何月顺 职称 教授
专 业 网络工程
二零一二年五月
摘 要
随着智能手机的快速普及,智能手机用户希望能够随时随地查询互联网所提供的服务,一种高效的办法就是将应用系统的功能拓展到手机终端上,让手机能够通过移动网以及互联网访问Web网站并处理各种各样的业务。因此,本文就在
讨论Android手机软件开发技术原理的基础上,详细介绍了在Android 嵌入式平台下实现Google 天气预报客户端的开发,主要包括Google天气预报xml文档的获取与解析、天气预报信息在Android 平台下的呈现等方面技术的介绍。
Android平台的气象服务系统基于Eclipse的开发环境,依托Google气象数据获得实时天气信息,利用SAX解析器对获得的Google Weather API进行解析获得数据,将天气情况显示在界面上,同时显示今后四天的天气情况,查询范围概括了目前绝大多数城市,同时有着美观、大方的界面,方便的操作与良好的视觉感。但Android 碎片化的问题导致本程序在一些机型上面运行效果不好,或者不能够运行,程序运行环境需要Android2.3.3版本才能完美运行成功。
关键语:android; Google 天气预报; 碎片化
ABSTRACT
With the rapid proliferation of smart phones, smart phone users want to be able to query the services provided by the Internet anytime, anywhere, and an efficient way to expand the functionality of the application system to the mobile terminal, so that the phone through the mobile network and Internet access to the Web siteand handle a variety of businesses. Therefore, this paper, based on the analysis and discussion of the Android mobile phone software development technical principles, detailed in the Android embedded platform Google Weather client development, including the acquisition and parsing of Google Weather xml document, the weather forecast information in presentation technology introduced in the Android platform.
Meteorological service system of the Android platform, Eclipse-based development environment, relying on Google meteorological data to obtain real-time weather information, using the SAX parser to parse the access to Google Weather API to obtain data, and display the weather conditions at the interface also shows the next four days weather conditions, the scope of the query summarizes the present, most of the city, at the same time have a beautiful, elegant interface, easy operation and good visual sense. Android fragmentation problem caused the program in some models run effect is not good, or not be able to run the environment for running programs Android2.3.3 perfect version to run successfully.
Key words: the android; Google weather forecast; fragmentation
目 录
I摘 要
IIABSTRACT
1绪 论
10.1研究内容
10.2 选题的目的及意义
10.3研究现状、发展趋势和问题
31 系统分析
31.1 研究目标
31.2 需求分析
31.3 性能分析
42 系统开发环境及相关技术
42.1 Android开发环境介绍
42.2 Android开发平台搭建
52.3 Android关键技术研究
62.3.1 Activity
62.3.2 Service
72.3.3 Broadcast Receiver
72.3.4 Content Provider
93 系统详细设计
93.1 用户界面设计
93.2 程序模块设计
103.3 数据流在程序中的传输过程
124 程序开发
124.1 文件结构与用途
144.2 工具类的简单介绍
144.2.1 Current_conditions类及相似类的介绍
144.2.2 TestPinYin4j类的介绍
144.2.3 HttpDownLoader类的介绍
154.2.4 MyHandler类的介绍
154.3 用户界面
154.3.1 布局文件的介绍
174.3.2 欢迎界面welcome
174.3.3 设置页面MainWeaherActivity
204.3.4 显示页面ShowWeatherActivity
245 系统测试
245.1 启动Android虚拟机
245.2启动App Widget应用程序
255.3欢迎界面
265.4默认显示界面
275.5点击更改城市按钮进入设置页面
285.6查询让你以城市天气情况
305.7查询List列表内的天气情况
326 总结
33致 谢
34参考文献
35附录一
绪 论
0.1研究内容
Android平台的气象服务系统是基于Android手机平台,运用Java语言,从Google上获取天气预报信息,开发出针对使用Android平台的手机天气预报系统。熟悉Android平台的开发软件的流程,程序能够通过互联网获取xml文件,解析获取的xml文件得到有用信息,并将信息呈现在手机上。
0.2 选题的目的及意义
基于Android平台的气象服务系统的开发可以进一步扩大气象信息的覆盖面,让广大公众能够在第一时间方便且快捷地获取最新的气象预报(预警)信息,以便提前预防,把气象灾害造成的损失降到最低。同时也可以强化气象公共服务的职能,完善公共服务体系、改善公共服务手段、增加公共服务产品、提高公共服务质量,更好地发挥了气象事业对经济社会发展的现实性作用。
这款手机天气预报系统给人们提供方便快捷的近期天气信息,是人们日常生活中必不可少的生活信息。系统界面简单明了,操作简单,用户体验感觉很好,能够帮助用户迅速知道当前天气情况,节约查询时间。
0.3研究现状、发展趋势和问题
2011年8月15日,谷歌宣布以125亿美元收购摩托罗拉移动,引发了业内专家对于谷歌收购摩托罗拉移动真实意图的猜测,也让业内人士更进一步认识到,“跨终端操作系统正成为移动互联网产业发展制高点”。
相比于Symbian的日落西山,以及苹果的封闭、Windows Phone的前途未卜,Android无疑代表了当前行业发展的主流趋势:开放平台取代了封闭平台。安卓操作系统发展迅猛主要得益于免费、开源和良好产业运作策略,这三点为安卓在智能手机市场赢得更多的发展机遇。系统的免费让更多的厂商加入,推动了份额的上升;代码的开源让更多的开发者进入应用开发;应用的丰富吸引了更多用户选择。从市场份额占有方面来看,Android的表现非常令人欣喜,飙升到47.3%位居第一,达到历史空前水平。近两年,Android系统在国内的发展主要在于针对Android系统的二次开发上,目前以Android系统源码为基础,再深度定制改版而成的操作系统主要有创新工场投资的点心公司开发的点心操作系统、中国移动的Ophone、联想的乐Phone、阿里云手机操作系统及雷军的小米科技开发的MIUI。
谷歌Android平台快速发展也导致了一系列问题的出现,其中最困扰开发者的是Android 碎片化的问题,这也是本程序面临的问题。100个Android手机制造商拿到Android内核之后,可以制造出100种搭载不同硬件平台、界面的Android手机,虽然是基于Android的,但实际上,已经不再是原来的Android了,经过各种改造之后,已经变成100个“独立”的Android ,这就是碎片化。系统和硬件有一定的一致性,这才能确保软件的兼容性,个人和团体开发的第三方软件也有一定的规范,以确保软件和设备完全兼容。从开发者的角度来看,就要为Android各个版本、各种手机型号、各种显示屏大小甚至各种定制化安卓ROM分别设计一款应用程序。或者需要兼容各个不同版本的Android,间接加大了软件开发的难度(主要难度是让软件在更多的设备上运行)。图0-1显示了目前正在使用的 3997 款不同的型号的Android版本。
图0-1 目前不同型号的Android系统
1 系统分析
1.1 研究目标
(1) 了解Android应用程序的设计和开发过程;
(2) 使用多种组件进行Android 平台气象服务系统的开发。
本软件是基于Eclipse的开发环境,依托Google气象数据获得实时天气信息,开发出了针对Android平台的手机天气预报系统。
1.2 需求分析
手机发展到今天已成为广大群众们日常是用的通讯工具,手机具备的功能也日趋完善,其中天气预报是最常见的一项功能,本设计可以在手机上实现天气情况的实时报告和天气预报功能,满足人们生活的需要。
本设计是一个App Widget应用程序,启动程序后显示南昌当前天气情况和未来的天气清况,点击更换城市可以进行城市的设置,程序通过图片和文字显示当前和未来的天气状况,包括温度、湿度、风向和雨雪情况等。每次退出程序会保存用户最后查询的城市,