ImageVerifierCode 换一换
格式:DOCX , 页数:42 ,大小:1.37MB ,
资源ID:12358644      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/12358644.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(大学毕设论文基于android平台的手机天气预报系统设计论文.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

大学毕设论文基于android平台的手机天气预报系统设计论文.docx

1、大学毕设论文基于android平台的手机天气预报系统设计论文06-装 订 线- 江苏经贸职业技术学院毕业设计(论文)题目:基于Android 平台的手机天气预报系统设计系 (院)信息技术学院专业班级13软件(单)学 号1326021113学生姓名施梦云校内导师高洁职 称讲师2015年 10月 28 日基于Android 平台的手机天气预报系统设计摘要: 如今智能手机的快速普及飞速发展,手机实用性越来越强,方便让智能手机用户能够随时更好的查询知道网络所提供的服务,好而有效的方法就是将应用系统的功能发展到手机终端上,因此,智能手机的发展对未来是有很大的帮助的! 首先天气预报是非常实用的信息服务,所

2、以特推出名为Android的开源手机操作系统,采用Linux内核,开发手机联盟成员可以任意使用修改SDK宝。利用手机终端实施查询天气预报,能让大家更能快捷了解想知道的天气信息,这款软件包括了操作系统,用户界面等。关键词:Android 手机天气预报系统 定位Design and Development of Weather Forecast System based on the Android SystemAbstract:Nowaday, the smart phones are developing faster and faster, mobile phones are more pr

3、actical, convenient for smart phone users to better know the services provided by the network, good and effective way is to develop the application system to the mobile terminal, so the smart phones will have very importance for development.First weather forecast is very practical information servic

4、es, so the launch of the Android open source mobile phone operating system, the use of the Linux kernel, the development of mobile phone alliance members can be used to modify the SDK. Using the mobile terminal to implement the query weather forecast, so that we can more quickly learn to know the we

5、ather information, the software includes the operating system, user interface, etc.Keywords:Android mobile weather forecast system Location 目录摘要 1第一章 概述 1.1 项目背景 11.2 项目意义 11.3 研究现状和发展趋势 1第2章 系统设计 2.1 软件环境 2 2.2 主要方法及技术 2 2.3 主要方法 3 2.4 数据库设计 3 2.5 设计目标 3第3章 需求分析3.1 经济可行性 43.2 系统功能分析 43.3 性能分析 43.4

6、系统架构图 4第4章 系统设计4.1 系统模块 54.2 系统功能 6第5章 主要模块 5.1 项目架构 7 5.2 主要功能实现 85.2.1 数据库实现 95.2.2数据库文件 105.2.3数据库代码 115.2.4数据库代码 125.2.5 GPS定位实现 13第6章 功能测试 6.1功能测试 18 结论 24 参考文献 25基于Android 平台的手机天气预报系统设计第1章 概述1.1项目背景近年来随着 3G 技术成熟使用广泛,网络的应用与日俱 增,网络应用开发技术成为当下最热潮的技术之中。在 Google 和 Android 手机联盟 的共同推动下,Android 系统在许多移动

7、网络应用开发中最为火热受到追捧。Android 系统是一个有意义的操作系统,此系统刚一出现就为大量的商家及其顾客们的热潮。故而为顺应潮流,了解未来移动互联网的发展趋势,开拓Android应用平台市场,更好的去迎合社会的需求。1.2项目意义 由于Android平台3G手机气象软件开发可以对扩大覆盖面很有利,同时可以使得广大群众提前就得知所在的城市天气信息,能够预先得知预防,降低了很多的不必要的灾害。并且能够更好的强化相应的功能,完善公共更好的服务体系、改善公共服务手段、增加公共服务产品、提高服务质量,发挥气象事业对经济社会发展的现实性作用更好的状态。 1.3 研究现状和发展趋势 随着现如今4G网

8、络的飞速发展,智能手机应用普及,安卓占全球手机市场的25.5%,仅次于塞班,成为第二大智能手机系统。安卓系统是第一次开源代码的操作系统,Linux内核,可以随时提取和完善安卓系统的SDK软件包。 我们相信,安卓系统在全球市场的成长壮大操作系统迅猛发展,有着良好的产业运作策略,计旨在搭载 Android 的移动设备上运行, 实现天气状况的实时动态更新与显示,方便人们这些特点将为安卓在智能手机市场赢得很好的发展机遇。此系统免费让代码的开源更多的开发者进入应用开发;或许同时谷歌值得众多厂商所学习的,不停的发现更好的版本,将系统推广到更多终端产品中,确保大家更好的体验。第二章 系统设计2.1 软件环境

9、(1)Java SDK(2)JDK1.6.10(3)Eclipse 3.5(4)Android2.2及以上(5)操作系统:Windows XP及以上(6)ADT(7)数据库:SQLite2.2 主要技术 1.Android手机的界面UI设计 2.Android的网络通信 3.Android的广播 4.GPS调用解析 5.Widget小部件编程 6.XML与JSON解析 7.SQLite数据库操作 8.Android文件操作 2.3 主要方法;(1)首先搭建Android平台 ,建立一个名为android2.2的项目名为WeatherSystem项目, ( 2)其次编写网络访问代码,访问:(3)

10、在程序第一次运行时,将db_weather.db数据库文件导入到应用程序数据库中(4)建立设置城市界面,读取数据库文件,获取身份,城市以及对应的城市码。(5)接收用户选择的城市码,访问:(6)解析天气信息,将城市码及天气信息缓冲下来,并为其设置有效时间,方便下次启动时直接得到天气信息,过期则从网上更新(7)定时由保存的城市码更新天气信息 双击Eclipse解压后目录中得到eclipse启动2.4 数据库设计 因为系统中通过中央气象台的WebService提供的API访问的得到的天气预报,故当需要查询哪城市时,需要它提供的城市码,而城市码的相对稳定一样,因此在构建系统时将他提前通过Android

11、的网络访问技术将其缓冲到本地SQLite数据库进行保存起来,对于后面的询查很有利。并产生流量费用呢。综合所述在本地简历db_weather.db的数据,表结构如下 :其中只存在两个表:provices 和citysCity中存在对city-num 对天气的查询,同时还存在外键province_id与provices表,形成1对n 的关系。 系统架构图 2.5 设计目标 为了完成一个实用稳定的天气预报系统,而且廉价并能满足足大用户的需求,由此针对上述目标,该设计要满足的是:1:系统能及时的反馈制定预报城市的天气情况2:自动定位用户所在城市,支持GPS定位3:控制流量消耗,使得只能在规定的时间间隔

12、期间才刷新气象信息,其余时间只需显示缓存的天气4:操作方便,使用便利,界面设计美观简洁,支持widget第三章 需求分析 3.1 经济可行性 系统开发使用或及利用的软件都是免费开放开源下载,所有系统在经济上是可行的。3.2 系统功能分析 该软件是APP widget的一个应该小程序,启动后可以进行城市、更新与查询相应的天气信息,可以通过图片和文字显示当前的一级未来的天气状况等,包括温度,湿度,风向,淤血情况等。这些天气细腻是根据后台数据库等服务显示的,服务相应的按照的时间间隔,从Google上获取相应天气预报信息。 3.3 性能分析程序响应速度快,处理信息快 具有相应安全保障等3.4系统架构图

13、第4章 系统设计 4.1 系统模块 根据相应的需求,将系统分为主要三大模块:天气信息、预报城市设置与 Widget 桌面小部件模块。相应系统模块功能如下:1). 天气信息显示指定城市三天内的天气状况,包括年月日、城市名称、温度、风力与当天的建议等,用户可通过按菜单键来显示菜单更新当前天气与设置天气显示的界面 背景,以及跳转至设置预报城市界面来更换预报城市。2). 预报城市设置 由自动设置预报城市与手动设置二部分组成,自动设置实现GPS 定位功能,自动确定当前用户所处位置,手动设置则通过可伸展性下拉列表单击选择系统数据库中预存的城市来进行设置,为了用户方便使用,支持以输入框的形式来过滤查询预报城

14、市。当单击选中城市时跳转至天气显示界面,会显示出城市当三天内的天气状况信息;首次运行时跳转至该页面。3). Widget 桌面小部件模块使得用户更快捷方便的实时了解天气状况信息,添加在 Android 系统桌面上显示当前天气与时间的天气小部件,用户拿起手机就能了解天气信息,并且当用户单击小部件时,将会自动跳至天气显示界面,并显示出三天的天气信息情况。4.2 系统功能 设置预报城市界面: 首次运行程序,跳至该城市设置界面进行预报城市的选择如图: 天气显示界面:选择了预报城市后,系统跳转至天气显示界面,显示该城市三天内的实时天气: 在天气界面中用户可通过按菜单键来调出菜单,选择城市,更新天气与更换

15、背景 小部件Widget显示 方便用户第一时间了解天气动态,添加widget显示功能界面: 第五章 主要模块 5.1 项目结构装有ADT插件的Eclipse中建一个名为WeatherSystem的Android2.2版本的项目,项目文件结构如下: WeatherSystem|_ src| |_com.weather.app| | |_MainActivity.java| | |_SetCityActivity.java| | |_UpdateWidgetService.java| | |_WeatherWidget.java|_p| | |_GPSListAdapter.java| | |_M

16、yListAdpater.java| |_com.weather.dao| | |_DBHelper.java| |_com.weaher.utils| |_LocationXMParser.java| |_WeatherInfoParser.java| |_WebAccessTools.java|_res| |_drawable| |_(略)| |_layout| | |_gps.xml| | |_main.xml| | |_widget_layout.xml| | |_set_city.xml|_menu| | |_configure_menu.xml| |_raw| | |_db_wea

17、ther.db| |_values| | |_color.xml| | |_strings.xml| |_xml| |_weather_widget.xml|_AndroidManifest.xml 5.2.主要功能实现 获取城市码db_weather.db数据库文件 通过访问中央气象局网从省份直辖市到城镇一级一层的深入,得到全国的城市码,如果需要获得一个地区的城市码总共需要访问4次网络,分别如下:1:访问 01|北京,02|上海,03|天津,04|重庆,05|黑龙江,06|吉林,07|辽宁,08|内蒙古,2. 访问 1201|济南,1202|青岛,1203|淄博,1204|德州,1205|烟

18、台,1206|潍坊,3. 访问 120101|济南,120102|长清,120103|商河,120104|章丘,120105|平阴,.4. 访问: 120102|101120102首先实现上述功能需使用Android 的网络访问技术,故编写工具类WebAccessTools类如下:/* * 根据给定的url地址访问网络,得到响应内容(这里为GET方式访问) * param url 指定的url地址 * return web服务器响应的内容,为String类型,当访问失败时,返回为null */ public String getWebContent(String url) /创建一个http请

19、求对象 HttpGet request = new HttpGet(url); /创建HttpParams以用来设置HTTP参数 HttpParams params=new BasicHttpParams(); /设置连接超时或响应超时 HttpConnectionParams.setConnectionTimeout(params, 3000); HttpConnectionParams.setSoTimeout(params, 5000); /创建一个网络访问处理对象 HttpClient httpClient = new DefaultHttpClient(params); try /执

20、行请求参数项 HttpResponse response = httpClient.execute(request); /判断是否请求成功 if(response.getStatusLine().getStatusCode() = HttpStatus.SC_OK) /获得响应信息 String content = EntityUtils.toString(response.getEntity(); return content; else /网连接失败,使用Toast显示提示信息 Toast.makeText(context, 网络访问失败,请检查您机器的联网设备!, Toast.LENGT

21、H_LONG).show(); catch(Exception e) e.printStackTrace(); finally /释放网络连接资源 httpClient.getConnectionManager().shutdown(); return null; /* * 根据给定的url地址访问网络,得到响应内容(这里为GET方式访问) * param url 指定的url地址 * return web服务器响应的内容,为String类型,当访问失败时,返回为null */ public String getWebContent(String url) /创建一个http请求对象 Http

22、Get request = new HttpGet(url); /创建HttpParams以用来设置HTTP参数 HttpParams params=new BasicHttpParams(); /设置连接超时或响应超时 HttpConnectionParams.setConnectionTimeout(params, 3000); HttpConnectionParams.setSoTimeout(params, 5000); /创建一个网络访问处理对象 HttpClient httpClient = new DefaultHttpClient(params); try /执行请求参数项 H

23、ttpResponse response = httpClient.execute(request); /判断是否请求成功 if(response.getStatusLine().getStatusCode() = HttpStatus.SC_OK) /获得响应信息 String content = EntityUtils.toString(response.getEntity(); return content; else /网连接失败,使用Toast显示提示信息 Toast.makeText(context, 网络访问失败,请检查您机器的联网设备!, Toast.LENGTH_LONG).

24、show(); catch(Exception e) e.printStackTrace(); finally /释放网络连接资源 httpClient.getConnectionManager().shutdown(); return null; 通过上面访问清楚,得到的编码与名称都是“编码|名称”的形式,所以在此也编写一个解析得到城市码的工具类WeatherInfoParser,以便解析从服务器中得到的城市码:/* * 通过解析content,得到一个一维为城市编号,二维为城市名的二维数组 * 解析的字符串的形式为: 编号|城市名,编号|城市名,. * param content 需要解析

25、的字符串 * return 封装有城市编码与名称的二维数组 */ public static String parseCity(String content) /判断content不为空 if(content!=null&content.trim().length()!=0) StringTokenizer st=new StringTokenizer(content, ,); int count = st.countTokens(); String citys = new Stringcount2; int i=0, index=0; while(st.hasMoreTokens() Str

26、ing city = st.nextToken(); index = city.indexOf(|); citysi0 = city.substring(0, index); citysi1 = city.substring(index+1); i = i+1; return citys; return null; 编写这两个类后就是编写从服务器端用程序遍历得到全国各地的城市名与城市码,并将它们分别的保存在Stringprovinces数组,Stringchilds数组与StringcityCode中:WebAccessTools webTools = new WebAccessTools(t

27、his); /得到访问网络的内容 String webContent=webTools.getWebContent( /第一次解析得到的为省份或一级直辖市 String provinces = WeaterInfoParser.parseCity(webContent); String groups = new Stringprovinces.length; String childs = new Stringprovinces.length; String cityCode = new Stringprovinces.length; for(int i=0; i provinces.length; i+) groupsi = provincesi1; /由省份码来得到城市码 StringBuffer urlBuilder= new StringBuffer( urlBuilder.append(provincesi0); urlBuilder.append(.xml); webContent = webTools.getWebContent(urlBuilder.toString(); String citys = WeaterInfoParser.parseCity(webContent); /用于保存所的有towns String towns =

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

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