基于Android平台的天气预报软件的设计与实现毕业论文

基于Android平台的天气预报软件的设计与实现毕业论文
基于Android平台的天气预报软件的设计与实现毕业论文

摘要

随着智能手机一步步走进普通人的生活,它将成为人们获取信息的主要设备。因此手机的娱乐应用服务将会有很大的发展空间手机快捷查询软件就是其中的一项。Android平台提供给用户非常方便的快捷查询功能这将为快捷查询服务的设计与实现提供了更好的平台。另外Android平台基本上是免费的,所以能够有效降低软件的成本,最终让每个用户能够自由地获取信息,也为手机快捷查询服务的普及做出贡献。

本文研究分析了Android平台的系统架构和组件模型接着解析了Android中的重要API和应用构成以Intent和生命周期的机制。在此基础上基于Android平台设计和开发手机快捷查询天气软件。本系统界面友好、操作便捷具有良好的可扩展性和可维护性;系统经过测试、可以稳定运行、能够满足手机用户的基本需求。

关键词智能手机Android API 用户

I

Abstract

As smartphones is walking into the life of ordinary people step by step, it will become the main equipment of access to information.Therefore, mobile entertainment application service there will be a very big development space of mobile phone quick query software is one of them.Android platform to provide users with convenient and fast query function for the design and implementation of a quick query service provides a better platform.Also the Android platform is essentially free, so can effectively reduce the cost of software, finally let each user can freely access to information and also contribute to the popularization of mobile phone quick query service.

This study analyzes the Android platform system architecture and component model and analyzes the important part of the Android API and application of mechanism with the Intent and life cycle.On the basis of the design and development based on the Android platform mobile phone quick query software in the weather.This system friendly interface, convenient operation, good scalability and maintainability;System tested, stable operation, and can satisfy the basic needs of mobile phone users.

Keyword smart phone Android API (Application Programming Interface) User

II

目录

摘要...........................................................................................................................I Abstract ......................................................................................................................... II 第1章绪论. (1)

1.1 国内外手机系统现状 (1)

1.2 Android系统的优势 (1)

1.2.1 开放性 (1)

1.2.2 挣脱束缚 (1)

1.2.3 丰富的硬件 (1)

1.2.4 开发商 (2)

1.3 Android的发展趋势 (2)

1.3.1 国产手机品牌纷纷加速海外布局 (2)

1.4 本章小结 (3)

第2章相关技术简介 (3)

2.1 开发工具 (3)

2.1.1 JDK(Java Development Kit) (3)

2.1.2 Android SDK 介绍 (4)

2.1.3 Eclipse 开发工具介绍 (4)

2.1.4 Android Development Tools(ADT)介绍 (4)

2.2 开发环境搭建 (4)

2.2.1 开发环境搭建的步骤 (4)

2.2.2JDK安装 (4)

2.2.3Eclipse安装 (5)

2.2.4Android SDK安装 (5)

2.2.5ADT安装 (6)

2.2.6 创建A VD (7)

2.3 本章小结 (7)

第3章需求分析 (7)

3.1 开发背景 (7)

3.2 开发需求分析 (8)

3.2.1 开发需求分析的作用 (8)

3.2.2 天气预报需求分析 (8)

3.3 本章小结 (8)

第4章项目功能描述 (9)

4.1 系统主要功能 (9)

III

4.2 项目工程结构图 (9)

4.2.1 项目工程 (9)

4.3 XML和JSON详情 (10)

4.3.1XML解析 (10)

4.3.2JSON解析 (11)

4.3.3XML的解析方式有两种 (12)

4.4本章小结 (13)

第5章程序代码设计 (14)

5.1 帮助界面 (14)

5.2 登陆界面 (14)

5.3 主界面 (18)

5.4 本章小结 (38)

结论 (38)

致谢 (39)

参考文献 (40)

附录1 (41)

IV

第1章绪论

1.1 国内外手机系统现状

在早期的手机内部是没有智能操作系统的,所有的软件都是由手机生产商在设计时所定制的,因此手机在设计完成后基本是没有扩展功能的。后期的手机为了提高手机的可扩展性,使用了专为移动设备开发的操作系统,使用者可以根据需要安装不同类型的软件。操作系统对于手机的硬件配置要求较高,所产生的硬件成本和操作系统成本使手机的售价明显高于不使用操作系统的手机。

现在手机上主流的操作系统主要包括以下几种:IOS、Android、Windows Mobile、Symbian、黑莓。而Android和IOS占有的市场比较大,所以可以理解为Android和IOS就是现在手机的主流。

IOS是由苹果公司为iPhone开发的操作系统。它主要是给iPhone、iPod touch 以及iPad使用。就像其基于的Mac OS X操作系统一样,它也是以Darwin为基础的。原本这个系统名为iPhone OS,直到2010年6月7日WWDC大会上宣布改名为IOS。IOS的系统架构分为四个层次:核心操作系统层(the Core OS layer),核心服务层(the Core Services layer),媒体层(the Media layer),可轻触层(the Cocoa Touch layer)。系统操作占用大概240MB的存储器空间。

Android是基于Linux内核的操作系统,是Google公司在2007年11月5日公布的手机操作系统,早期由Google开发,后由开放手持设备联盟(Open Handset Alliance)开发。它采用了软件堆层(software stack,又名以软件叠层)的架构,主要分为三部分。底层Linux内核只提供基本功能;其他的应用软件则由各公司自行开发,部分程序以Java编写[1]。

1.2 Android系统的优势

1.2.1 开放性

在优势方面,安卓(Android)平台首先就是其开放性,开发的平台允许任何移动终端厂商加入到Android联盟中来。显著的开放性可以使其拥有更多的开发者,随着用户和应用的日益丰富,一个崭新的平台也将很快走向成熟。

开放性对于安卓(Android)的发展而言,有利于积累人气,这里的人气包括消费者和厂商,而对于消费者来讲,最大的受益正是丰富的软件资源。开放的平台也会带来更大竞争,如此一来,消费者将可以用更低的价位购得心仪的手机。

1.2.2 挣脱束缚

在过去很长的一段时间,特别是在欧美地区,手机应用往往受到运营商制约,使用什么功能接入什么网络,几乎都受到运营商的控制。自从iPhone上市,用户可以更加方便地连接网络,运营商的制约减少。随着EDGE、HSDPA这些2G 至3G移动网络的逐步过渡和提升,手机随意接入网络已不是运营商口中的笑谈。

1.2.3 丰富的硬件

这一点还是与安卓(Android)平台的开放性相关,由于安卓(Android)的开放性,众多的厂商会推出千奇百怪,功能特色各具的多种产品。功能上的差异和特

色,却不会影响到数据同步、甚至软件的兼容。好比你从诺基亚Symbian风格手机一下改用苹果iPhone,同时还可将Symbian中优秀的软件带到iPhone上使用、联系人等资料更是可以方便地转移。

1.2.4 开发商

安卓(Android)平台提供给第三方开发商一个十分宽泛、自由的环境。因此不会受到各种条条框框的阻挠,可想而知,会有多少新颖别致的软件会诞生[2]。

1.3 Android的发展趋势

安卓风暴席卷全球,如果要说最近什么系统最火爆那么毫无疑问是安卓系统。自从2008年9月22日,美国运营商T-Mobile USA 在纽约正式发布了第一款基于android安卓的手机后,更多的移动设备厂商看到了安卓android的光明前景,并纷纷加入其中,android甚至已经涉足上网本市场了其发展前景广阔涉及领域越来越大。随着android手机的普及,android应用的需求势越来越大,这个潜力巨大的市场,已经吸引无数软件开发厂商和开发者投身其中。

Android的开放性使其比苹果和黑莓对年轻人更具吸引力,更能吸引年轻人群的关注和喜爱。在18岁至24岁族群中,Android是最多人选用的操作系统。同时因为Android系统的开放性为Android平板电脑的快速发展奠定了基础,也才能促使其吸引着越来越多的用户接受和使用。同时Android还具有应用程序无界限、应用程序是在平的的条件下创建的、应用程序可以轻松的嵌入网络、应用程序可以并行运行等众多出色的品质。具有其他操作系统无法比拟的优势和发展空间。

安卓系统在不断升级完善,如今,平板电脑市场已成为Android与苹果iOS 除了智能手机领域之外争夺的第二个焦点。一直以来,多数新闻仍然显示iPad 在平板市场的霸主地位难撼。但是,以Android领头的平板电脑正以高速的增长对苹果iPad造成冲击。放眼整个平板市场,生产Android平板电脑的确是大势所趋。世界上所有的顶级设备制造商,三星、索尼、摩托罗拉、联想、LG、宏碁、HTC、华硕,几乎每一家要么正在卖Android平板电脑,要么快要卖了。

安卓给用户的触屏体验非常好,安卓手机在高端机领域泛滥的同时也在中低端机领域涉足,这将给安卓系统手机带来非常好的前景,从目前的市场上来看,安卓系统能够在短短的时间里面,占据着超大的市场份额,而且还有非常好的信誉口碑,绝对不是一两个人吹捧出来的,那是因为安卓手机真的能够让人体验到好,才能够有如此高的评价。所以说,虽然目前安卓手机还是存在一定问题上的不足,很多问题都有待需要改善,这就说明安卓系统处于一种发展状态,那么它的生命力就会很强,就业前景广阔。

如今,Android5.0上市以后,我们会发现Android的市场更大了,2015年MWC世界移动通信大会已在西班牙巴塞罗那拉举行,中国手机厂商无疑在这个国际舞台上扮演起了愈发重要的角色,国产手机的崛起已成为不争的事实,在酷派、华为、小米等诸多领军企业积极参与世界级大展的背后,是它们纷纷加码海外市场深化布局的精心谋略,在MWC参展的酷派高层更是直言不诲的指出,2015年将成为酷派大规模海外扩张的关键一年[3]。

1.3.1 国产手机品牌纷纷加速海外布局

曾几何时,国产手机在全球移动终端产业总是远远落后于苹果、三星等国际

品牌,但短短几年,随着移动互联网浪潮和智能手机创新的演化,手机行业的全球竞争态势有了明显变化,酷派、华为、小米等手机厂商通过精细化的定位和布局脱颖而出在全球列居前五,智能手机十强中国独占其八。尽管国内市场依然火爆,但进入2015年,国产手机积极拓展海外市场的步伐又再度提速。

对国产手机来说,拓展海外市场无疑是一个新的业绩增长点,这也是国产手机竞相出海的主要原因。随着国内市场竞争的日趋白热化,国产手机厂商在国内的增速也逐渐放缓,而包括印度、东南亚和拉丁美洲的新兴市场其智能手机的需求量却与日俱增。国内外市场的强烈对比,让酷派、华为、小米等国内厂商更加迫切的将目光转向了前景广阔的海外。

去年7月,小米在印度正式推出小米手机战绩斐然,东南亚大多数国家当前都能看到小米手机的身影,华为以欧州市场为重要突破口主推Ascend和荣耀也是今非昔比。而酷派在国际社会的品牌美誉度也获得了大幅度提升,仅2014年在海外市场的销售额预计就突破20亿,增长率更是高达300%,包括实现了与欧洲和北美最大的运营商的合作。

面临广阔的发展机遇,酷派、华为、小米等国产手机厂商要想有更大的突破,未来完成对三星、苹果等巨头的全面超越,进一步深化海外市场也就势在必行。而诸如像MWC这样的世界级移动大会无疑便成为了酷派、华为、中兴、小米等国产手机厂商们进一步展示自己拓展海外市场的战略舞台,作为移动通信产业的风向标,MWC一直引领着智能手机这类电子消费产品的发展趋势。

分析人士认为,诸多国产手机厂商对海外市场都寄予了巨大的期望,但能否一帆风顺,顺利抢摊仍需拭目以待。不过,随着国产品牌2015年对拓展海外市场步伐的进一步加快,与全球科技巨头展开竞争并重新塑造全球手机市场的格局也将变得充满悬念。

最后,更加智能、安全的设备,随着智能手机的不断普及和更加智能,手机软件的更新、升级将会变得越发简单,并会为用户提供工具或信息,让用户有能力和权力决策那些内容可以浏览、下载或分享。在安全性上也将更加出色,能够十分有效的帮助用户进行获取到的内容的管理,保护用户的个人隐私和基于手机的金融活动如电子钱包、在线支付、在线贸易等。

1.4 本章小结

这章我们主要介绍了Android在国内外的发展、Android的系统的优势和Android的发展趋势等等,其实我们从这几方面来看Android的发展空间很大,所以我认为随着智能化,以后出现在我们身边的设备会更多。

第2章相关技术简介

2.1 开发工具

2.1.1 JDK(Java Development Kit)

JDK是java语言的软件开发工具包。本应用用的是JDK的J2ME版,它主要用于移动设备、嵌入式设备上的java应用程序。没有JDK的话,无法编译Java

程序,所以这是开发Java程序必须安装的工具[4]。

2.1.2 Android SDK 介绍

SDK:(software development kit)软件开发工具包。被软件开发工程师用于为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件的开发工具的集合。因此,Android SDK指的是Android专属的软件开发工具包[5]。

2.1.3 Eclipse 开发工具介绍

Eclipse 是一个开放源代码的、基于Java 的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括Java 开发工具(Java Development Tools,JDT)。

虽然大多数用户很乐于将Eclipse 当作Java IDE 来使用,但Eclipse 的目标不仅限于此。Eclipse 还包括插件开发环境(Plug-in Development Environment,PDE),这个组件主要针对希望扩展Eclipse 的软件开发人员,因为它允许他们构建与Eclipse 环境无缝集成的工具。由于Eclipse 中的每样东西都是插件,对于给Eclipse 提供插件,以及给用户提供一致和统一的集成开发环境而言,所有工具开发人员都具有同等的发挥场所。

这种平等和一致性并不仅限于Java 开发工具。尽管Eclipse 是使用Java 语言开发的,但它的用途并不限于Java 语言;例如,支持诸如C/C++、COBOL 和Eiffel 等编程语言的插件已经可用。

2.1.4 Android Development Tools(ADT)介绍

目前Android开发所用的开发工具是Eclipse,在Eclipse编译IDE环境中,安装ADT,为Android开发提供开发工具的升级或者变更,简单理解为在Eclipse 下开发工具的升级下载工具。

SDK(Software Development Kit):一般是一些被软件工程师用于为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件的开发工具的集合。在Android中,它为开发者提供了库文件以及其它开发所用到的工具。简单理解为开发工具包集合,是整体开发中所用到的工具包,如果你不用Eclipse作为你的开发工具,你就不需要下载ADT,只下载SDK即可开发[6]。

2.2 开发环境搭建

2.2.1 开发环境搭建的步骤

第一步:JDK安装,第二步:Eclipse安装,第三步:Android SDK安装,第四步:ADT安装,第五步:创建A VD。

2.2.2JDK安装

如果你还没有JDK的话,可以去这里下载,接下来的工作就是安装提示一步一步走。设置环境变量步骤如下:

我的电脑->属性->高级->环境变量->系统变量中添加以下环境变量:

JA V A_HOME值为:C:\Program Files (x86)\Java\jdk1.6.0_10(你安装JDK的目录)

CLASSPATH值为:.;C:\Program Files (x86)\Java\jdk1.6.0_10\lib。

Path: C:\Program Files (x86)\Java\jdk1.6.0_10\bin。

NOTE:前面四步设置环境变量对搭建Android开发环境不是必须的,可以跳过。

安装完成之后,可以在检查JDK是否安装成功。打开cmd窗口,输入java –version 查看JDK的版本信息。出现类似下面的画面表示安装成功了,如图所示2-1验证JDK安装是否成功,

图2-1验证JDK安装是否成功

2.2.3Eclipse安装

如果你还么有Eclipse的话,可以去这里下载,下载如图2-2所示的Eclipse IDE for Java Developers(92M)的win 32bit版:

图2-2 Eclipse下载

2.2.4Android SDK安装

在Android Developers下载android-sdk_r05-windows.zip,下载完成后解压到任意路径。

运行SDK Setup.exe,点击Available Packages。如果没有出现可安装的包,请点击Settings,选中Misc中的"Force https://..."这项,再点击Available Packages。选择希望安装的SDK及其文档或者其它包,点击Installation Selected、Accept All、Install Accepted,开始下载安装所选包[6]。

在用户变量中新建PATH值为:Android SDK中的tools绝对路径“确定”后,重新启动计算机。重启计算机以后,进入cmd命令窗口,检查SDK是不是安装成功。如图2-3所示。

图2-3设置Android SDK的环境变量

运行android –h 如果有类似以下的输出,表明安装成功,如图2-4所示。

图2-4 验证Android SDK是否安装成功

2.2.5ADT安装

1、打开Eclipse IDE,进入菜单中的"Help" -> "Install New Software"

2、点击Add...按钮,弹出对话框要求输入Name和Location:Name自己随便取,Location输入https://www.360docs.net/doc/40113517.html,/android/eclipse[6]。如图2-5所示:

图2-5 Name和Location

确定返回后,在work with后的下拉列表中选择我们刚才添加的ADT,我们会看到下面出有Developer Tools,展开它会有Android DDMS和Android

Development Tool,勾选他们。如图2-6所示:

图2-6 Install

然后就是按提示一步一步next。完成之后:选择Window > Preferences...在左边的面板选择Android,然后在右侧点击Browse...并选中SDK路径,本机为:D:\AndroidDevelop\android-sdk-windows点击Apply、OK。配置完成。

2.2.6 创建AVD

为使Android应用程序可以在模拟器上运行,必须创建A VD。

在Eclipse中。选择Windows > Android SDK and A VD Manager,点击左侧面板的Virtual Devices,再右侧点击New,填入Name,选择Target的API,SD Card 大小为256MB,Skin随便选,Hardware目前保持默认值,点击Create A VD即可完成创建A VD。

2.3 本章小结

本章分主要介绍该项目所用到的开发中用到了哪些工具详细的解释了每个工具的用途,并且详细的教大家配置安装环境和环境的搭建。

第3章需求分析

3.1 开发背景

天气气候预报模式的发展科学和基础的支撑很重要,要重视基础性的问题,采取实质性的应对措施。要从战略高度度,深刻思考下一代天气气候预报模式的发展思路;要加强科学研究,天气和气候一体化是未来的趋势,适应国际发展需求,中国要努力推动二者一体化的工作,在科学研究上不断发展;要加强管理,提高认识,推动核心技术建设,不断推进天气气候模式预报的发展。

正式基于此,很多与人们生活息息相关的手机端的APP被陆续开发出来,天气预报查询就是为此而开发。人们日常生活中在不方便看电视,听广播,或者通过读报的方式获取天气信息时,人们就可以通过手机端安装的天气预报查询软件随时随地查看当前以及未来的天气信息,也可实时更新天气信息,给人们日常出行,生产生活提供气象方面的参考。

由于现在人们的生活工作的方式在改变,生活节奏快,工作压力大,传统的方式已经慢慢被人们所摒弃。因此,一部每天都带在身边的手机,并且安装了天

气预报查询的APP,是一个也很不错的选择。

3.2 开发需求分析

3.2.1 开发需求分析的作用

开发软件系统最为困难的部分就是要准确说明开发什么。最为困难的概念性工作便是要编写出详细的技术需求,这包括所有面向用户、面向机器和其它软件系统的接口。如果做错,这将是会最终给系统带来极大损害的一部分,并且以后再对它进行修改也极为困难。目前,国内产品的庞杂,一家企业可能有几个系统并立运行,它们之间的接口是系统开发人员最头痛的问题。对于商业最终用户应用程序,企业信息系统和软件作为一个大系统的一部分的产品是显而易见的。但是对于我们开发人员来说,并没有编写出客户认可的需求文档,我们如何知道项目于何时结束?而如果我们不知道什么对客户来说是重要的,那我们又如何能使客户感到满意呢?

然而,即便并非出于商业目的的软件需求也是必须的。例如库、组件和工具这些供开发小组内部使用的软件。当然你可能偶尔勿需文档说明就能与其他人意见较为一致,但更常见的是出现重复返工这种不可避免的后果,而重新编制代码的代价远远超过重写一份需求文档的代价,这些血的教训正在国内的软件开发者身上发生。

3.2.2 天气预报需求分析

这款天气预报的主要内容是一个地区或城市未来一段时期内的阴晴雨雪、最高最低气温、风向和风力及特殊的灾害性天气。就中国而言,气象台准确预报寒潮、台风、暴雨等自然灾害出现的位置和强度,就可以直接为工农业生产和群众生活服务。随着生产力的发展和科学技术的进步,人类活动范围空前扩大,对大自然的影响也越来越大,因而天气预报就成为现代社会不可缺少的重要信息。

开发这款天气软件是为了让更多的人了解天气状况,为大家出行时能提供便利的天气状况,根据用户的使用舒适的角度开发,基于用户的意见开发的一款天气软件。为用户提供了准确的天气信息。

3.3 本章小结

本章主要介绍了一下开发背景和开发需求,因为现在科技的发达,手机变的非常智能,不仅仅是手机上可以使用这款软件,只要合适与Android2.2以上系统的都适用,从天气预报中我们可以看到当天的信息,这样方便用户的出行,给用户带来了比较优秀的天气信息等等。

第4章项目功能描述

4.1 系统主要功能

黑屋天气要完成在android手机上实现天气的即时预报(约30分钟更新一次)。所涉及的功能有:

先启动程序后进入帮助界面然后是滑动界面,然后进入登陆界面会提示您(第一次需要注册,如果注册过请直接登录)可以进行设置城市页面,设置城市后进入主界面,主界面包括当天的天气的详细信息,可以通过图片和文字显示当前和未来2天的天气状况,包括温度、湿度、风向和雨雪情况等。使用效果图实现与相应天气的结合。本软件获取的中国气象网的天气信息,所以说很有权威性和准确性。

4.2 项目工程结构图

4.2.1 项目工程

下面是项目的工程构图:

com.blackhouse.weahter.welcome包下包括了welcome.java类来显示开题动画,FirstAct.java、SecondAct.java、ThirdAct.java、ViewPagerAct.java类用来显示可滑动的帮助界面,LogoinActivity.java类用来显示登录界面、Registe.java类用来显示注册界面。

com.blackhouse.weather.app包下中MainActivity.java类是程序的主程序主界面上显示的有未来两天的天气和当天的天气,SetCityActivity.java类获得城市信息,WeatherWidget.java获得天气情况。

https://www.360docs.net/doc/40113517.html,p包下GPSListAdapter.java类用于显示GPS自动搜索定位的适配器,MyListAdapter.java类自定义的可伸缩性列表的适配器。

com.blackhouse.weather.dao包下DBHelper.java类访问数据库,HandlTask.java 类异步任务,MyService.java处理程序的服务,TaskThread.java类多线。

com.blackhouse.weather.utils包下的CityInfo.java类是获取城市的信息工具类,LocationXMLParser.java类通过解析XML来得到解细的地址信息,WeaterInfoParser.java类解析从网上获取的天气信息的工具类,WebAccessTools.java类网站访问工具类,用于Android的网络访问。如图4-1所示:

如图4-1项目工程结构图

4.3 XML和JSON详情

4.3.1XML解析

所谓的XML,就是eXtensible Markup Language,翻译成中文就是“可扩展标识语言”,在国内很多人理解XML为html的简单扩展,这实际上是一种误解。尽管XML同html关系非常密切[7]。

XML是一种通用的数据格式从低级的角度看,xml是一种简单的数据格式,是纯100%的ASCII文本,而ASCII的抗破坏能力是很强的。不象压缩数据和java 对象,只要破坏一个数据文件数据就不可阅读。从高级的角度看,是一种自描述语言。

XML可利用于数据交换主要是因为XML表示的信息独立于平台的,这里的平台即可以理解为不同的应用程序也可以理解为不同的操作系统;它描述了一种规范,利用它Microsoft的word文档可以和Adobe 的Acrobat交换信息,可以和数据库交换信息。

XML表示的结构化数据。对于大型复杂的文档,xml 是一种理想语言,不仅允许指定文档中的词汇,还允许指定元素之间的关系。比如可以规定一个author元素必须有一个name子元素。可以规定企业的业务必须有包括什么子业务。

XML文档。XML文档有DTD和XML文本组成,所谓DTD(Document Type Definition ),简单的说就是一组标记符的语法规则.,表明XML文本是怎么样组

织的,比如DTD可以表示一个必须有一个子标记, 可以有或者没有子标记等等。当然一个简单的XML文本可以没有DTD。下面是一个简单的xml文本。haha其中以?开始并结尾的是进程说明。Standalone表示外围设备。这里外围设备可以理解为该XML文本没有应用其他的文件。因为XML文件可以外部应用DTD 等外部数据。

SAX,全称Simple API for XML,既是一种接口,也是一种软件包。它是一种XML解析的替代方法。SAX不同于DOM解析,它逐行扫描文档,一边扫描一边解析。由于应用程序只是在读取数据时检查数据,因此不需要将数据存储在内存中,这对于大型文档的解析是个巨大优势。

DOM即Document Object Model,它把XML文档的内容实现为一个对象模型,简单的说就是应用程序如何访问XML文档,W3C的DOMLevel1 定义了如何实现属性、方法、事件等[9]。

PULL解析器小巧轻便,解析速度快,简单易用,非常适合在Android移动设备中使用,Android系统内部在解析各种XML时也是用PULL解析器,Android 官方推荐开发者们使用Pull解析技术。Pull解析技术是第三方开发的开源技术,它同样可以应用于JavaSE开发。

几种解析技术的比较与总结。对于Android的移动设备而言,因为设备的资源比较宝贵,内存是有限的,所以我们需要选择适合的技术来解析XML,这样有利于提高访问的速度。

DOM在处理XML文件时,将XML文件解析成树状结构并放入内存中进行处理。当XML文件较小时,我们可以选DOM,因为它简单、直观。

SAX则是以事件作为解析XML文件的模式,它将XML文件转化成一系列的事件,由不同的事件处理器来决定如何处理。XML文件较大时,选择SAX技术是比较合理的。虽然代码量有些大,但是它不需要将所有的XML文件加载到内存中。这样对于有限的Android内存更有效,而且Android提供了一种传统的SAX使用方法以及一个便捷的SAX包装器。使用Android.util.Xml类,从示例中可以看出,会比使用SAX来得简单。

PULL解析并未像SAX解析那样监听元素的结束,而是在开始处完成了大部分处理。这有利于提早读取XML文件,可以极大的减少解析时间,这种优化对于连接速度较漫的移动设备而言尤为重要。对于XML文档较大但只需要文档的一部分时,PULL解析器则是更为有效的方法。

4.3.2JSON解析

JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。它基于JavaScript(Standard ECMA-262 3rd Edition - December 1999)的一个子集[10]。JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C,C++,C#,Java,JavaScript,Perl,Python等)。这些特性使JSON成为理想的数据交换语言。易于人阅读和编写,同时也易于机器解析和生成(网络传输速度快)。

1.可读性

JSON和XML的可读性可谓不相上下,一边是简易的语法,一边是规范的标签形式,很难分出胜负。

2.可扩展性

XML天生有很好的扩展性,JSON当然也有,没有什么是XML可以扩展而JSON却不能扩展的。不过JSON在Javascript主场作战,可以存储Javascript复合对象,有着xml不可比拟的优势。

3.编码难度

XML有丰富的编码工具,比如Dom4j、JDom等,JSON也有提供的工具。无工具的情况下,相信熟练的开发人员一样能很快的写出想要的XML文档和JSON字符串,不过,XML文档要多很多结构上的字符。

4.3.3XML的解析方式有两种

一是通过文档模型解析,也就是通过父标签索引出一组标记。例如:xmlData.getElementsByTagName("tagName"),但是这样是要在预先知道文档结构的情况下使用,无法进行通用的封装[11]。

另外一种方法是遍历节点(document 以及childNodes)。这个可以通过递归来实现,不过解析出来的数据仍旧是形式各异,往往也不能满足预先的要求。凡是这样可扩展的结构数据解析起来一定都很困难。

JSON也同样如此。如果预先知道JSON结构的情况下,使用JSON进行数据传递简直是太美妙了,可以写出很实用美观可读性强的代码。如果你是纯粹的前台开发人员,一定会非常喜欢JSON。但是如果你是一个应用开发人员,就不是那么喜欢了,毕竟XML才是真正的结构化标记语言,用于进行数据传递。而如果不知道JSON的结构而去解析JSON的话,那简直是噩梦。费时费力不说,代码也会变得冗余拖沓,得到的结果也不尽人意。但是这样也不影响众多前台开发人员选择JSON。因为json.js中的toJSONString()就可以看到JSON的字符串结构。当然不是使用这个字符串,这样仍旧是噩梦。常用JSON的人看到这个字符串之后,就对JSON的结构很明了了,就更容易的操作JSON[12]。

本软件使用JsonObject和JsonArray实现针对Json串的解析,这里我们解析的是中国天气网的天气。在天气预报程序设计中JSON解析代码如下:String info =new WebAccessTools(context).getWebContent(str.toString());

JSONObjectjson=newJSONObject(info).getJSONObject("weatherinfo");

TextView tempText = null;

ImageView imageView=null;

int weather_icon = 0;

//建立一个缓存天气的文件

SharedPreferences.Editor editor = getSharedPreferences(STORE_WEATHER, MODE_PRIV ATE).edit();

//得到城市

info=json.getString("city");

tempText=(TextView)findViewById(R.id.cityField);

tempText.setText(info);

editor.putString("city", info);

// //得到阳历日期

//获取现在的时间

Date date = new Date();

// System.out.println(date);

//针对时间进行规范化输出

SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日

HH:mm:ss");

String str = sdf.format(date);

tempText=(TextView)findViewById(R.id.date_y);

Log.i("TAG", str);

tempText.setText(str);

editor.putString("date_y", str);

//得到温度

info = json.getString("temp1");

info += " ~ "+json.getString("temp2");

tempText=(TextView)findViewById(R.id.currentTemp);

tempText.setText(info);

editor.putString("temp1", info);

//得到天气

info= json.getString("weather");

tempText=(TextView)findViewById(R.id.currentWeather);

tempText.setText(info);

editor.putString("weather1", info);

//天气图标

// info= json.getString("weather");

imageView=(ImageView)findViewById(R.id.weather_icon01);

weather_icon = getWeatherBitMapResource(info);

imageView.setImageResource(weather_icon);

editor.putInt("img_title1", weather_icon);

//设置一个有效日期为5小时

long validTime = System.currentTimeMillis();

validTime = validTime + 5*60*60*1000;

editor.putLong("validTime", validTime);

//保存

https://www.360docs.net/doc/40113517.html,mit();

} catch (JSONException e) {

e.printStackTrace();

}

除了上述之外,JSON和XML还有另外一个很大的区别在于有效数据率。JSON作为数据包格式传输的时候具有更高的效率,这是因为JSON不像XML 那样需要有严格的闭合标签,这就让有效数据量与总数据包比大大提升,从而减少同等数据流量的情况下,网络的传输压力。

4.4本章小结

本章简要的描述了一下本软件的主要功能都包括什么和工程的结构等等,详细的介绍了解析的几种方式的优缺点,其中有XML、SAX、DOM和拼接字符串的JSON解析。

第5章程序代码设计

5.1 帮助界面

本软件在开始后时候运用到了ViewPager这个类,来实现页卡的帮助界面。在段代码中我们运用到了List集合和Adapter(适配器)来实现的页卡滑动。如图5-1所示,功能性代码如下:

图5-1帮助界面

public class ViewPagerAct extends Activity {

private List list;

private LocalActivityManager manager;

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

ViewPager pager = new ViewPager(this);

setContentView(pager);

manager = new LocalActivityManager(this, true);

manager.dispatchCreate(savedInstanceState);

list = new ArrayList();

list.add(getMyView("0", new Intent(this, FirstAct.class)));

list.add(getMyView("1", new Intent(this, SecondAct.class)));

list.add(getMyView("2", new Intent(this, ThirdAct.class)));

MyViewPagerAdapter adapter = new MyViewPagerAdapter(list);

pager.setAdapter(adapter);

}

public View getMyView(String id,Intent intent){

return manager.startActivity(id, intent).getDecorView();

}

}

5.2 登陆界面

登陆界面中包含的控件有Button(按钮),EditText(文本输入框),CheckBox

(复选框),TextView(文本显示)。用这些软件组成了登陆界面并且运用OnClickListener(),进行监听,创建监听事件并且判断你注册的账户密码是否正确,如果正确则显示登陆成功。里面用到了SharedPreferences(用户偏好)来储存密码,其实SharedPreferences(用户偏好)也是一种轻型的数据存储方式,它的本质是基于XML文件存储key-value键值对数据,通常用来存储一些简单的配置信息。其存储位置在/data/data/<包名>/shared_prefs目录下。SharedPreferences 对象本身只能获取数据而不支持存储和修改,存储修改是通过Editor对象实现。实现SharedPreferences存储的步骤如下:

1.根据Context获取SharedPreferences对象。

2.利用edit()方法获取Editor对象。

3.通过Editor对象存储key-value键值对数据。通过key值取value值。

4.通过commit()方法提交数据。并且用到了Intent传值等方法。

如图5-2所示,功能性代码如下:

图5-2登陆界面

public class LoginActivity extends Activity {

private EditText userName, password;

private CheckBox rem_pw, auto_login;

private TextView mRegister;

private String userNameValue, passwordValue;

private SharedPreferences sp;

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

// 隐藏标题栏

this.requestWindowFeature(Window.FEATURE_NO_TITLE);

setContentView(https://www.360docs.net/doc/40113517.html,yout.logoin);

// 获得实例对象

sp = this.getSharedPreferences("userInfo", Context.MODE_WORLD_READABLE);

userName = (EditText) findViewById(R.id.etzhanghu);

password = (EditText) findViewById(R.id.etmima);

rem_pw = (CheckBox) findViewById(R.id.cbmima);

auto_login = (CheckBox) findViewById(R.id.cbauto);

mRegister = (TextView) findViewById(R.id.register);

if(getIntent().getBooleanExtra("isfirst", false)){

Toast.makeText(this, "您是第一次运行,请点击注册", Toast.LENGTH_LONG).show();

}

mRegister.setOnClickListener(new OnClickListener() {

@Override

public void onClick(View v) {

Intent intent = new Intent(LogoinActivity.this, Registe.class);

startActivity(intent);

Log.i("TAG", "跳转到注册界面");

finish();

}

});

// 判断记住密码多选框的状态

if (sp.getBoolean("ISCHECK", false)) {

// 设置默认是记录密码状态

rem_pw.setChecked(true);

userName.setText(sp.getString("USER_NAME", ""));

password.setText(sp.getString("PASSWORD", ""));

// 判断自动登陆多选框状态

if (sp.getBoolean("AUTO_ISCHECK", false)) {

// 设置默认是自动登录状态

auto_login.setChecked(true);

// 跳转界面

Intent intent = new Intent(LogoinActivity.this,

MainActivity.class);

LogoinActivity.this.startActivity(intent);

Log.i("TAG", "跳转到主界面");

finish();

}

}

// 监听记住密码多选框按钮事件

rem_pw.setOnCheckedChangeListener(new OnCheckedChangeListener() { @Override

public void onCheckedChanged(CompoundButton buttonView,

boolean isChecked) {

if (rem_pw.isChecked()) {

System.out.println("记住密码已选中");

sp.edit().putBoolean("ISCHECK", true).commit();

} else {

System.out.println("记住密码没有选中");

sp.edit().putBoolean("ISCHECK", false).commit();

基于Android的日历系统的设计与实现毕业设计(论文)

华北电力大学本科毕业设计(论文) 毕业设计(论文) ` 题目基于Android的日历系统 的设计与实现 二○一四年六月

毕业设计(论文)原创性声明和使用授权说明 原创性声明 本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。 作者签名:日期: 指导教师签名:日期: 使用授权说明 本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。 作者签名:日期:

学位论文原创性声明 本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律后果由本人承担。 作者签名:日期:年月日 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。 涉密论文按学校规定处理。 作者签名:日期:年月日 导师签名:日期:年月日

Android 天气预报简介

Android 谷歌天气预报 该项目是东方标准广州java培训中心为java技术开发学习人员和android技术开发班的学员共同开发研制的一款生活助手软件《谷歌天气预报》。项目来自于日常生活中天气预报新闻。由于人们日益紧凑的生活节奏,对于天气的关注不如以前那么重要,所以为了节省人们的业余时间,直接将天气预报功能搬入了手机软件功能当中,方便人们阅读浏览当地天气情况,并适当做出生活调整。 该项目技术要点为:推送功能+后台服务设计Service+联网功能HTTP+xml解析器XmlPullParser等技术。 一.项目介绍 《谷歌天气预报》是一款简单的天气预报定制软件。界面简洁易懂,方便用户使用。可以查询几大城市的天气预报情况,主要功能有天气预告、城市温度、湿度、未来几天天气预测等。该软件使用起来非常方便。只要输入所查看的城市,软件自动提供当地的天气情况,以供查询。 二.For personal use only in study and research; not for commercial use 三. 四.功能说明 1、进入软件页面

2、功能说明 1)、【天气】功能:显示当前天气情况。资料来自于互联网真实天气预报。 2)、【城市】功能:显示当前所在城市。 3)、【温度】功能:显示选择城市天气温度变化。资料来自互联网真实天气温度预告。 4)、【湿度】功能:显示当地城市湿度 5)、【天气预测】功能:预测未来几天的天气状况。可以预测未来三天以内的天气资料。 6)、【更新日期】功能: 显示当前天气日期。

五.程序设计技术说明 本程序主要使用Service服务。Android开发中,当需要创建在后台运行的程序的时候,就要使用到Service。Service 可以分为有无限生命和有限生命两种。特别需要注意的是Service跟Activities是不同的(简单来说可以理解为后台与前台的区别),例如,如果需要使用Service的话,需要调用startService(),从而利用 startService()去调用Service中的OnCreate()和onStart()方法来启动一个后台的Service。 在本程序中除了使用Seivice服务外,还用到了网络xml解析器XmlPullParser。同时还使用了监听器OnClickListener 来进行监听动作。 程序部分主要代码1: // 更新UI线程 handler = new Handler(); thread = new Thread() { @Override public void run() { // 未完成ui更改 if (!done) {

基于Android平台的天气预报软件设计

教学单位 学生学号 本科毕业论文(设计) 题目基于Android平台的天气预报软件设计 学生姓名 专业名称 指导教师 2013年5月20日

基于Android平台的天气预报软件设计 摘要:Google于2008年推出了一款名为Android的开源智能手机操作系统,它采用Linux内核,开放手机联盟(OHA)成员可以任意使用和修改SDK包,系统的开源性使其具有良好的拓展性。Android的最大特点是其开放性体系架构,不仅具有非常好的开发、调试环境,而且还支持各种可扩展的用户体验。因此,对于软件从业人员来说,Android平台具有无限的吸引力。目前Android操作系统已经成为用户最多的智能操作系统。 本天气预报软件的设计,为Android终端用户提供一款方便的实时天气预报查询软件,为用户带来良好的用户体验及便利的对天气情况进行掌控。本天气预报软件采用ViewFlipper组件,提供友好的界面滑动切换方式,同时减少系统运行时占用的空间。使用Files方式保存天气信息,Shared Preferences保存用户偏好设置,节约了文件存储的空间。本文就在分析讨论Android手机软件开发技术原理的基础上,利用Android中基本组件和常用设计模式,开发出能为用户提供更好的基于Android平台的手机天气预报软件。 关键字:Android;天气预报;智能手机平台

Design of weather forecast software Based on the Android Abstract:Google in 2008 launched a product called the Android open source smart phone operating system, which uses the Linux kernel, Open Handset Alliance (OHA) members can be free to use and modify the SDK package, open source, it has good scalability of the system. The most important feature of Android is its open architecture, not only has a very good development and debugging environment, but also supports a variety of scalable user experience. Therefore, for software professionals, the Android platform has unlimited appeal. Android operating system has become the user the most intelligent operating system. The weather software designed for the Android end users to provide a convenient, real-time weather query software, to provide users with a good user experience and convenience of control of the weather conditions. The weather forecast software the ViewFlipper components, friendly interface sliding switch, while reducing the space occupied when the system is running. Files saved Weather Information, Shared Preferences to save user preferences settings, save the file storage space. This article on the basis of analysis and discussion of the Android mobile phone software development technical principles, using the basic components and common design patterns Android, developers can provide users with better mobile phone weather forecast software based on the Android platform. Keywords:Android;weather forecast;smart phone platform

手机天气预报系统毕业设计.pdf

目录 摘要 (1) 需求分析 (2) 一、开发背景 (2) 二、项目需求分析 (2) 总体设计 (2) 一、系统规划 (2) 二、系统功能界面 (3) 1. 设置预报城市界面: (3) 2.天气显示界面: (4) 3.Widget 桌面小部件界面: (5) 三.设计目标 (6) 系统设计 (6) 一、开发及运行环境 (6) 二、数据库设计 (6) 三、主要方法及步骤 (7) 四、主要方法及技术 (7) 主要模块 (7) 一、项目框架 (7) 二、主要功能实现 (8) 1.获取城市码 db_weather.db 数据库文件 (8) 2.实现可伸缩性列表的的构建与过滤 (12) 3.GPS 定位功能的实现 (15) 4.Widget 窗体小部件的更新 (18) 功能测试 (19) 结论 (23)

摘要 Window 操作系统的诞生成就了微软帝国,同时也造就了 PC 时代的繁荣,然而如今,以Android和iPhone手机为代表的智能移动设备的发明与互联网云技术的兴起却敲响了PC时代的丧钟!这也预示着移动互联网时代(3G)已经来临。 在这个互联网繁荣的时代,有一颗超新星,以它独特性能优势与人性化的UI 设计使它在短短的几年迅速的占领了智能移动设备的市场份额,它就是Google 的 Android!这也意味着 Google 在移动互联网时代开始抢跑并领跑。 Android 是基于Linux 平台完全开源的手机操作系统,同时开发语言为Java,这对于Java 开发的我们是何等的诱人,程序员的技术要与时代同行,因此我选择了以Android为平台的手机天气预报系统来作为我的毕业设计,选择手机天气预报系统不仅可以提升技术,同时也很实用,为人们时刻了解天气状况和出行带来了方便。

安卓系统毕业论文设计

安卓系统毕业论文设计 编号毕业设计论文任务书题目安卓电子菜单点菜 系统院系专业计算机及应用学生姓名黎少环学号030111301428 指导教师单位桂林航天工业高等专科学校 姓名郑利华职称副教授题目类型理论研究实验研 究工程设计工程技术研究软件开发 2012年 4月22日一、毕业设计论文的内容、要求计算机领域在不断创新。计算机在代替和延伸脑力劳动方面发挥越来越重要的作用 不仅在工业方面而且在日常生活中也越来越离不开计算机。在数字化的今天为了更加加快人们在吃的方面节省更多的 时间由此电子点菜系统的出现更加利于人们在点餐时高效 点菜方便点菜员与顾客沟通更好展示主推菜品有效提高单 桌消费额餐厅繁忙时方便顾客自助点菜有效节约人工提高 服务质量菜单管理饭店所有菜品信息、菜品口感、份量方便客人选择超强展示简洁界面方便服务员及顾客点菜优越于 传统菜谱提高效率点菜、提交、下单同步进行规范管理可与现有点菜方式同时使用弥补现有点菜系统的缺陷准确无误 避免传统手写点菜失误造成的消费者投诉数据分析餐厅营 业状况一目了然并兼容现有餐饮管理软件开机的首页可以 插入企业广告增加酒店营业收入饭店形象大步提升提高了 客户忠诚度、增加收益等。为了使电子点菜系统更加简单、到位、便捷并能都基于上述种种原因本论文通过Android平台和eclipse SDK 的编程环境实现andriod电子点菜系统。

andriod电子点菜系统。主要分为前台和后台管理。前台管理设计了九个按钮分别命名为android电子点餐系统、特色菜、热菜、凉菜、汤类、酒类、套餐、呼叫服务、结账当想点菜时点击特色菜、热菜、凉菜、汤类、酒类、套餐等按钮则进入另一个界面进行点菜并点击界面中的完成按钮算出所点菜的金额。二、毕业设计论文应完成的工作 1、毕业设计论文说明书打印四份 2、英译汉资料或不少于2000汉字的调研报告 3、任务书 4、软件清单工科要求、设计图纸等 5、设计的软件或硬件作品三、应收集的资料及主要参考文献 1 谭浩强.Java语言程序设计第三版M.北京:清华大学出版社2008. 2 张孝祥.Java就业培训教程M.北京:清华大学出版社2003 4 李春儒.守望互联网经济—电子商务发展现状与趋势OL2005. 5 史斌星史佳.Java基础编程贯通教程M.北京清华大学出版社2003. 6 马海军杨继萍.Java 2 实用教程M.北京清华大学出版社2004. 7Smego.Android应用程序设计基础2009. 8E2ECloud.深入浅出Android程序设计OL.北京人民邮电出版社2009. 9Smego.Android A Programmers GuideOL2008. 10杨丰盛.Android 应用开发揭秘M.西安机械工业出版社2010. 四、试验、测试、试制加工所需主要仪器设备及条件硬件要求计算机一台显示器一台软件要求系统开发平台android 与eclipse 系统开发语言java 数据库管理软件Microsoft SQL Server 2005

基于Android的手机天气预报系统

基于Android的手机天气预报系统

合肥学院 2013届毕业论文(设计) 论文(设计)题目基于Android的手机天气预 报系统 院系名称计算机科学与技术系 专业(班级)计算机科学与技术 2009级本科3班 姓名(学号)丁同飞(0904013004) 指导教师屠菁 系负责人袁暋 完成时间2013-06-02

基于Android的手机天气预报系统 中文摘要 天气预报为人们了解天气状况和出行安排带来了方便,但是,大多数天气预报软件都是基于PC端,查询起来并不是很便捷。而随着智能手机的普及和3G技术的发展,手机端实现天气查询成为了可能,因此,实现手机端的天气预报系统成为了人们迫切需要且切实可行的需求。 本设计使用Android设计技术开发了一种运用在Android系统上的手机天气预报软件系统,本系统通过选择城市来获得天气,风向,温度等信息。基于手机的天气预报系统软件可以使用户对于各地的天气情况的实时掌握,极大的方便了用户的出行和行程安排,避免了不必要的麻烦,具有很强的实用性。 本论文首先进行了项目的背景介绍,开发的目的及意义,接着进行系统分析(包括需求分析、研究目标和内容),接着分析了Android系统的框架,然后介绍了本系统的用到的技术以及平台的搭建,最后论述了本系统的详细设计(包括功能模块设计、数据库设计等),接着进行了项目的测试用例分析,最后给出了结论以及展望。 关键词:天气预报;Android;linux内核

Based on the Android of mobile phone weather forecast system ABSTRACT Weather Forecast for people to understand weather conditions and travel arrangements to bring the convenience, however, most weather forecasts are based on the PC side software, check it is not very convenient. With the popularity of smart phones and 3G technology, mobile client queries become possible to achieve weather, therefore, realize the phone side of weather forecasting system has become an urgent need for people with practical needs. This design uses design techniques developed an Android application in the Android system mobile weather software system, the system by selecting the city to get weather, wind direction, temperature and other information. Phone-based weather forecasting system software allows users around the weather conditions for real-time control, which greatly facilitates the user's travel and travel arrangements, to avoid unnecessary trouble, and highly practical. This paper first introduces the background for the project, the development of purpose and meaning, followed by systems analysis (including needs analysis, research objectives and content), and then analyzes the framework of the Android system, then introduces the technology used in this system as well as platform structures, and finally discusses the detailed design of the system (including functional module design, database design, etc.), followed by analysis of the project's test cases, and finally gives the conclusion and outlook. Keyword: android;the Linux kernel;the weather forecast I

毕业设计android论文-范本

1 绪论 1.1 智能手机平台 智能手机具有独立的操作系统,像个人电脑一样支持用户自行安装软件、游戏等第三方服务商提供的程序,并通过此类程序不断对手机的功能进行扩充,同时可通过移动通讯网络来实现无线网络接入。目前,全球多数手机厂商都有智能手机产品,而芬兰诺基亚、美国苹果、加拿大RIM(黑莓)、美国摩托罗拉、中国台湾宏达(htc)更是智能机中的佼佼者。 智能手机具有五大特点:1. 具备无线接入互联网的能力,即需要支持GSM网络下的GPRS或者CDMA网络的CDMA 1X或3G网络。 2. 具有PDA的功能,包括PIM(个人信息管理),日程记事,任务安排,多媒体应用,浏览网页。 3. 具有开放性的操作系统,可以安装更多的应用程序,使智能手机的功能可以得到无限扩展。4. 人性化,可以根据个人需要扩展机器功能。5. 功能强大,扩展性能强,第三方软件支持多。 1.1.1 Symbian Symbian(中文名:塞班)是一个实时性、多任务的纯32位操作系统,具有功耗低、内存占用少等特点,非常适合手机等移动设备使用,经过不断完善,但是虽然在智能型手机市场取得了无比的成功,并长期居于首位,Symbian S60、Symbian3,UIQ等(尤其是S60)系统近两年亦遭遇到显著的发展瓶颈。最近12个月欧洲手机公司诺基亚(Nokia)在智能手机市场市占率的滑落是不争的事实。需要注意的是,并不是所有的Symbian 系统都是智能系统,比如S40系统,就不属于智能手机系统。 1.1.2 Android Android ( 中文名:安卓) 是基于Linux平台开源手机操作系统名称,该平台由操作系统、中间件、用户界面和应用软件组成,号称是首个为移动终端打造的真正开放和完整的移动软件。目前在市场上可谓如日中天,越来越受到玩家的青睐,倍受摩托罗拉推崇。在Android发展的过程中,

Android手机天气预报项目报告

1.2 开发目标 现有的3G技术和移动互联网技术的快速发展,智能手机功能的不断增强,让基于Android平台的查询需求越来越多。 本软件就是利用现有的网络快速获取网络上的天气信息并显示到手机终端上,为用户提供实时的天气查询和近期天气查询服务,为工作、出行等带来便利。通过Web Service 等技术让用户体验到前所未有的移动计算。 第2章项目设计 2.1 项目总体设计 本软件是一个App Widget应用程序,启动程序后可以进行城市、更新频率的设置,可以通过图片和文字显示当前和未来的天气状况,包括温度、湿度、风向和雨雪情况等。这些天气数据是通过后台服务获取的,这个后台服务可以按照一定的时间间隔,通过Google提供的服务获取天气预报信息,并将天气信息保存在数据库中。 该软件的基本功能需求有: (1) 启动App Widget应用程序; (2) 设置界面:对要显示天气预报的城市及更新频率进行设置; (3) 显示界面:通过文字和图片显示当前的天气情况,包括日期、时间、城市、最高温度、最低温度、当前温度等。 (4) 详细界面:在显示出“显示界面”上所有信息的同时用列表的形式显示今后四天的天气情况。 2.2 技术框架设计 2.2.1 开发环境 Android的上层应用程序是用Java语言开发的,一般情况下是基于Dalvik虚拟机的,所以Google公司推荐使用主流的Java集成开发环境Eclipse。而用Java语言进行开发,需要用到SUN公司提供的Java SDK(其中包括JRE:Java Runtime Environment)。此外,Android的应用程序开发和Java开发有较大区别的,需要使用Google提供的Android SDK。同时,要在Eclipse上安装ADT,为Android开发提供开发工具的升级或者变更,是Eclipse 下开发工具的升级或下载的工具。 简言之,需要以下软件,才能搭建Android开发环境,从而进行Android应用程序的开发。 (1) Java SDK

基于Android平台的管理系统设计与实现毕业论文

基于Android平台的管理系统设计与实现

基于Android平台的 管理系统设计与实现Design and Implementation of Online Management System Based on the Android Platform

摘要 基于Android平台的网上超市管理系统是结合当前最流行的移动平台开发的电子商务系统。本系统是PC端电商网站在Android平台的延伸,除了传统电商网站能够实现的各项基本功能之外还具有使用简单,操作方便等优点。利用本系统可以为超市的销售提供新的渠道。 本系统的开发运用了基于Java的Android SDK技术,系统采用C/S(客户端/服务器)结构实现。开发所采用的IDE为MyEclipse 10并安装由Google提供的Android Developer Tools。系统运行环境为Android版本4.0以上的移动设备。 本系统在电商网站的基础上完成了移动平台功能的设计,使用户能够在手机上方便的进行传统电商网站上所能完成的大部分操作。本系统的优点在于能够充分利用都市人群上下班途中、排队闲暇等碎片时间,提供方便快捷的购物方式,因此能够极大的抓住用户的依赖程度,提高超市自身品牌影响力,扩张超市营业范围,提高商品销售收入。 关键词:Android 移动设备网上超市

Abstract This e-commerce system named Online Market Management System is based on the most popular mobile platform - Android platform. This system is an extension of PC e-commerce website on the Android platform. Except functions that normal e-commerce system can realize, this system also has many advantages like easily use and convenient. Using this system has provided a brand new way for market sales. The development of this system has using the Android SDK based on Java technology, and achieve by C/S (Client/Server) structure. The IDE used for development is MyEclipse 10 which has installed Android Developer Tools provided by Google. This system need a mobile device that Android version is higher than 4.0 for running. This system has completed the function of the mobile platform based on e-commerce sites, and allow user finish most functions which can be done at normal e-commerce sites. This system can make full use of pieces of time which like the way go to work and the way home, or when you get in a line waiting for something, to provide a fast convenient way to shopping. These advantages can seize the users' dependence, improve the influence, expansion the scope of the business and increase sales revenue. Key words:Android mobile device Online Market

android天气预报报告

Android天气预报论文 学院: 电子信息工程学院 专业: 计算机应用 学号: 11033801135 学生姓名: 郎红 指导教师: 黄炜 日期: 2013年11月13

一、项目背景 现有的3G技术和移动互联网技术的快速发展,智能手机功能的不断增强,让基于Android平台的查询需求越来越多。 本软件就是利用现有的网络快速获取网络上的天气信息并显示到手机终端上,为用户提供实时的天气查询和近期天气查询服务,为工作、出行等带来便利。通过Web Service等技术让用户体验到前所未有的移动计算。 二、需求分析 (一)功能需求 在这个综合示例中,有一个显示天气情况的用户界面,可以通过图片和文字显示当前和未来几天的天气状况,包括温度、湿度、风向和雨雪情况等。这些天气数据是通过后台服务获取的,这个后台服务按照一定时间间隔,从搜索引擎上获取天气预报信息,并将天气信息保存在后台服务中。示例还需要提供基于SMS短信的天气数据服务,其他手机用户可以向本示例所在的手机上发送SMS短信,在短信中包含特定的关键字,则可以将已有的天气情况通过SMS短信回复给用户。最后,每个被发送的SMS短信都会被记录下来,用户可以浏览或删除这些记录信息。 (二)界面需求 从上面的描述中可以基本了解软件的功能需求,但为了将需求分析过程变得简单明了,首先找出用户界面上需要显示的内容。功能描述中有“显示天气情况的用户界面”和“用户可以浏览或删除这些记录信息”,除此以外,一般应用软件还应有显示配置信息的界面。因此,本示例应该包含三个用户界面:显示天气预报的用户界面、显示已发送SMS短信的用户界面、浏览和设置配置信息的用户界面 (三)内部功能 从用户界面出发,分析隐藏在界面后面的内部功能,这些功能则是程序正常运行的基础(1)显示天气预报的用户界面; ①获取搜索引擎的天气数据 ②保存天气数据信息 (2)显示SMS短信的用户界面 ①根据关键字监视SMS短信 ②发送包含天气信息的SMS短信 ③将发送SMS短信的相关信息写入数据库 (3)浏览和设置配置信息的用户界面 ①将用户设置的配置信息保存到数据库 ②启动时读取数据库中的配置信息 ③支持恢复缺省设置

基于Android平台的天气预报软件的设计与实现毕业论文

摘要 随着智能手机一步步走进普通人的生活,它将成为人们获取信息的主要设备。因此手机的娱乐应用服务将会有很大的发展空间手机快捷查询软件就是其中的一项。Android平台提供给用户非常方便的快捷查询功能这将为快捷查询服务的设计与实现提供了更好的平台。另外Android平台基本上是免费的,所以能够有效降低软件的成本,最终让每个用户能够自由地获取信息,也为手机快捷查询服务的普及做出贡献。 本文研究分析了Android平台的系统架构和组件模型接着解析了Android中的重要API和应用构成以Intent和生命周期的机制。在此基础上基于Android平台设计和开发手机快捷查询天气软件。本系统界面友好、操作便捷具有良好的可扩展性和可维护性;系统经过测试、可以稳定运行、能够满足手机用户的基本需求。 关键词智能手机Android API 用户 I

Abstract As smartphones is walking into the life of ordinary people step by step, it will become the main equipment of access to information.Therefore, mobile entertainment application service there will be a very big development space of mobile phone quick query software is one of them.Android platform to provide users with convenient and fast query function for the design and implementation of a quick query service provides a better platform.Also the Android platform is essentially free, so can effectively reduce the cost of software, finally let each user can freely access to information and also contribute to the popularization of mobile phone quick query service. This study analyzes the Android platform system architecture and component model and analyzes the important part of the Android API and application of mechanism with the Intent and life cycle.On the basis of the design and development based on the Android platform mobile phone quick query software in the weather.This system friendly interface, convenient operation, good scalability and maintainability;System tested, stable operation, and can satisfy the basic needs of mobile phone users. Keyword smart phone Android API (Application Programming Interface) User II

Android个人记账本计算机毕业设计论文

摘要 随着智能手机的快速普及,智能手机操作系统市场风生水起。为了让智能手机用户能够随时随地查询互联网所提供的服务,一种高效的办法就是将应用系统的功能拓展到手机终端上,让手机能够通过移动网以及互联网访问Web网站并处理各种各样的业务。因此,智能手机的应用软件及其需要的服务将有广阔的发展前景。 在如今这个智能手机系统群雄纷争的时候,2008年Google推出了一款名为Android 的开源智能手机操作系统,它采用Linux内核,开放手机联盟(OHA)成员可以任意使用和修改SDK包,系统的开源性使其具有良好的拓展性。这款软件包括了操作系统、用户界面和应用程序,即智能手机工作所需要的全部软件。Android的最大特点是其开放性体系架构,不仅具有非常好的开发、调试环境,而且还支持各种可扩展的用户体验,包括丰富的图形组件、多媒体支持功能以及强大的浏览器。因此,对于软件从业人员来说,Android平台具有无限的吸引力。 本文就在分析讨论Android手机软件开发技术原理的基础上,开发出能为用户提供更好的基于Android平台的个人记账手机软件。 关键词Java; Android; 记账;智能手机平台

Based on the android personal account the design and development Abstract With the rapid proliferation of smartphones, smart phone operating system market, wind and water. In order for smartphone users to check the Internet anytime, anywhere services provided anefficient way to expand the function of the system will be applied to themobile phone terminal, the mobile phone to Internet access via mobile networks,and variety of Web sites and process business. Therefore, the smart phone applicationsand the need for the service will have broad prospects for development. In today's smart phone system whendisputes warlords, 2008, Google introduced a smart phone called the Androidopen source operating system, which uses Linux kernel, Open Handset Alliance(OHA) members can be free to use and modify the SDK package, the system It hasa good open-source nature of the expansion of. The software includes theoperating system, user interface and applications that need to work smartphones all the software. Android's biggest feature is its open architecture,not only has a very good development and debugging environment, but alsosupports a variety of scalable user experience, including rich graphicalcomponents, multimedia support, and powerful browser. Therefore, for softwareprofessionals is, Android platform has unlimited appeal. In this paper, the analysis anddiscussion Android mobile phone software development technology on the basis ofthe principle, developed to provide users with better platform to the personalcharge basedon Android meteorological software. Key words Java; Android; charge; smartphoneplatform

安卓天气预报课程设计(终审稿)

安卓天气预报课程设计公司内部档案编码:[OPPTR-OPPT28-OPPTL98-OPPNN08]

石家庄铁道大学Android系统课程设计报告 2016 年夏季学期 题目:基于Android的天气预报开发 学院:电气与电子工程学院 专业:电子信息工程 学生姓名: 学号: 指导教师: 完成日期: 2016年7月15日

评分表 说明: 项目一,考察程序运行情况。 项目二,考察完成情况包括功能完整性,工作量,界面,用户体验等。 项目三,考察课程设计报告的格式和完整性。

摘要 随着移动通信技术的发展和无线数据业务的进步,手机已被赋予了除通话以外的其它许多功能。全新的手机软件领域已逐渐聚焦了众多软件开发商的目光,软件开发者和软件用户将共同面临这个振奋人心的新境界。 本设计使用Android设计技术开发了一种运用在Android系统上的手机天气预报软件系统,本系统通过选择城市来获得天气,风向,风向,温度等信息。基于手机的天气预报系统软件可以使用户对于各地的天气情况的实时掌握,极大的方便了用户的出行和行程安排,避免了不必要的麻烦,具有很强的实用性。 关键词:Android;手机天气预报软件。

目录 第1章绪论 (1) 课题研究内容 (1) 课题研究的目的和意义 (1) 课题研究前景 (2) 第2章系统需求分析 (3) 系统功能需求 (3) 系统流程图 (3) 系统界面需求 (4) 系统性能需求 (4) 第3章详细设计和功能实现 (5) 界面的设计 (5) 欢迎界面设计 (5) 菜单界面设计 (6) 各模块详细设计 (6) 欢迎模块设计 (6) 主工程设计 (7) 第4章软件测试 (15) 电脑模拟器测试 (15) 手机端测试 (17)

天气预报问卷调查

问卷内容 尊敬的朋友:您好!这是一份我毕业论文的调查问卷,希望您能在百忙中认真填写,感谢您的帮助!非常感谢! 【第一部分】 1、性别(B) A 男 B 女 2、年龄(B) A 18以下 B 18-35 C 35-60 D 60以上 3、职业(注:若您的职业与气象相关,请选择职业的同时也选择J 答案)(A ) A 企业职员 B 事业单位职工 C 经商者 D 自由职业者 E 机关干部 F 学生 G 军人武警 H 农民 I 退休者 J 与气象相关 K 其他(希望能说明) 4、您的常住地( A ) A 城镇 B 乡村 5、学历:D A 初中及其以下 B 研究生(硕、博士) C 高中(专) D 大学(专) 6、在涉及“当天气预报不准,导致您晾晒在外的衣物淋湿或受损问题时,您认为?(D ) A 预报准确率目前无法百分之百,不需赔偿 B 不需赔偿,但应解释原因 C 应该适当赔偿 D 无所谓 7、您平时通过什么渠道了解天气资讯? 可多选( BD ) A 电视 B 手机短信 C 广播电台 D 网络 E 报纸 F 声讯(12121或96121电话) G 电子显示屏 H 其他 I 无法获取 8、您最为关注的是天气预报的哪个方面?( A )_ A 预报准确率 B 随时随地都能了解到 C 预报内容多D预报形式通俗多样E 其他(需要具体说明) 9、您认为天气预报除了基本天气信息外,还应该包含哪些方面的资讯?可多选( AC ) A 天气变化温馨提示 B 出行的交通信息 C 生活常识 D 其他(需要具体说明) 10、您一般想了解多长时段的天气预报?可多选( C E ) A 今明两天天气 B 今明后3天天气 C 未来一周天气 D 未来12小时天气 E 未来3小时天气 F 未来一月天气 G 其它(需要具体说明)

基于Android平台的天气预报软件设计_毕业设计

本科毕业论文(设计)题目基于Android平台的天气预报软件设计

基于Android平台的天气预报软件设计 摘要:Google于2008年推出了一款名为Android的开源智能手机操作系统,它采用Linux内核,开放手机联盟(OHA)成员可以任意使用和修改SDK包,系统的开源性使其具有良好的拓展性。Android的最大特点是其开放性体系架构,不仅具有非常好的开发、调试环境,而且还支持各种可扩展的用户体验。因此,对于软件从业人员来说,Android平台具有无限的吸引力。目前Android操作系统已经成为用户最多的智能操作系统。 本天气预报软件的设计,为Android终端用户提供一款方便的实时天气预报查询软件,为用户带来良好的用户体验及便利的对天气情况进行掌控。本天气预报软件采用ViewFlipper组件,提供友好的界面滑动切换方式,同时减少系统运行时占用的空间。使用Files方式保存天气信息,Shared Preferences保存用户偏好设置,节约了文件存储的空间。本文就在分析讨论Android手机软件开发技术原理的基础上,利用Android中基本组件和常用设计模式,开发出能为用户提供更好的基于Android平台的手机天气预报软件。 关键字:Android;天气预报;智能手机平台

Design of weather forecast software Based on the Android Abstract:Google in 2008 launched a product called the Android open source smart phone operating system, which uses the Linux kernel, Open Handset Alliance (OHA) members can be free to use and modify the SDK package, open source, it has good scalability of the system. The most important feature of Android is its open architecture, not only has a very good development and debugging environment, but also supports a variety of scalable user experience. Therefore, for software professionals, the Android platform has unlimited appeal. Android operating system has become the user the most intelligent operating system. The weather software designed for the Android end users to provide a convenient, real-time weather query software, to provide users with a good user experience and convenience of control of the weather conditions. The weather forecast software the ViewFlipper components, friendly interface sliding switch, while reducing the space occupied when the system is running. Files saved Weather Information, Shared Preferences to save user preferences settings, save the file storage space. This article on the basis of analysis and discussion of the Android mobile phone software development technical principles, using the basic components and common design patterns Android, developers can provide users with better mobile phone weather forecast software based on the Android platform. Keywords:Android;weather forecast;smart phone platform

相关文档
最新文档