毕业设计(论文)-基于Android平台的任意天气系统的设计与实现(24页).doc
《毕业设计(论文)-基于Android平台的任意天气系统的设计与实现(24页).doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)-基于Android平台的任意天气系统的设计与实现(24页).doc(24页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、-毕业设计(论文)-基于Android平台的任意天气系统的设计与实现-第 19 页 网络教育学院本 科 生 毕 业 论 文(设 计)题 目:基于Android平台的任意天气系统的设计与实现 学习中心: 深圳学习中心 层 次: 专科起点本科 专 业: 网络工程 年 级: 15 年 秋 季 学 号: 学 生: 指导教师: 完成日期: 2017年 6 月 24日 内容摘要随着智能手机的不断发展,手机应用也如雨后春笋般的越来越多。据移动市场研究公司App Figures近期发布的一项报告显示截止2016年1月15日,安卓应用的总数达到了143万款远高于IOS系统。由此也反映出用户的一个困扰,有时需要打
2、开非常多的应用来完成日常基本的生活所需,所以解决这一问题集成化大量应用在一个应用中就成为了目前的潮流,这也正是基于安卓的任意天气设计的初衷。本文首先分析了基于安卓的任意天气的研究背景及意义,并对基于安卓的任意天气开发的意义进行了分析。接着对开发任意天气中所涉及到的安卓架构、工作机制、理论基础进行了详细的阐述。随后从系统功能需求出发,并分析了设计安卓任意天气的可行性,最后对系统开发及运行环境进行了研究。然后从系统的总体结构出发并分析了数据库的设计,并对任意天气各模块的设计进行了研究。文章的最后是每个模块的实现过程,并有每个模块的运行测试,最终系统测试稳定可用。关键词:安卓;应用;任意天气;实现目
3、 录内容摘要I1 绪论11.1 研究背景11.2开发意义11.3 研究方法及研究框架11.3.1 研究方法11.3.2 论文研究框架12 安卓相关技术22.1 安卓体系架构22.2 安卓的应用和工作机制32.3 系统开发应用的理论基础42.3.1 XML解析技术简介42.3.2 SharedPreferences 技术简介42.3.3 SQLite技术简介42.3.4 AIDL技术简介53 系统的需求分析63.1 系统功能需求63.2 系统可行性分析63.2.1 技术可行性63.2.2 用户操作可行性63.3 系统开发和运行环境74 系统总体设计84.1 系统总体结构设计84.2 系统数据库设
4、计84.3 任意天气各模块设计94.3.1 主界面的设计94.3.2 天气预报的查询及显示94.3.3 通讯录中联系人的显示及添加104.3.4 快递详情的查询114.3.5 记事本的显示及添加124.3.6 计算器功能145 系统实现与测试155.1 系统主界面实现155.2 通讯录中联系人模块的实现165.3 快递详情查询模块的实现175.4 记事本模块的实现185.5 计算器模块的实现195.6 天气预报查询显示模块的实现206 结论与展望22参考文献231 绪论1.1 研究背景随着移动互联网和手机通信的快速发展,智能手机和平板电脑已经成为人们生活必不可少的工具。2016年国内手机市场呈
5、现出加速发展的趋势,2G、3G的市场结构更稳定,智能手机出货量增加了一倍而4G的出现让手机市场更为火热。报告显示2016前6个月,国内手机市场的销售增长45%,3G手机销量增长70%。智能手机销量增长一倍以上。下半年国内手机销量将继续保持增长趋势。从去年第二季度全球平板电脑销量统计数据来看将近五千万的销售量比较2016年同期增长超过40%;Android平板电脑销量和出货量喜人的业绩,获得了超过60%的市场份额,此外iOS平板占据28%,Windows占5%。1.2 开发意义目前从手机用户使用手机的日常行为可以发现除了电话通信的使用,手机应用软件已成为的绝大多数手机用户生活获取信息等的生活助手
6、。目前谷歌的Android应用市场非常活跃,手机应用软件市场孕育着无限的市场机会。而目前随着手机应用的越来越多,用户需要打开的应用也越来越多,这极大的增加了手机的负担并拖慢了手机的运行速度。所以设计并实现基于安卓的任意天气就具有很重要的意义。基于安卓的手机小助手,提供了很多简单功能的集成,方便用户的操作、提高了效率1。1.3 研究方法及研究框架1.3.1 研究方法(1)文献法:通过查找国内外相关文献,对国内外该领域目前的研究现状进行归纳总结,并提出自己的研究思路。(2)定性分析法:对获得的各种材料进行思维加工,分析归纳和抽象概括。(3)定量分析法:综合运用历史、观察法等科学方式,对现象进行有计
7、划的、周密的和系统的了解,并对调查搜集到的大量资料以及数据进行分析、综合、比较、归纳和整理。(4)实证分析法。实证的分析研究任意天气的设计、实现过程。1.3.2 论文研究框架第一章首先对任意天气开发的背景及开发意义进行了分析。第二章从安卓的架构、工作机制相关技术等分析。第三章对系统功能需求出发,并分析了设计安卓任意天气的可行性,最后对系统开发及运行环境进行了研究。第四章系统的总体结构出发并分析了数据库的设计,并对任意天气各模块的设计进行了研究。第五章是每个模块的实现过程,并有每个模块的运行测试。2 安卓相关技术2.1 安卓体系架构Android是一个专门为移动设备打造的真正开放和完整的移动软件
8、操作系统,它是由Linux结合Java组成的开源软件平台,Android虚拟机的核心源代码是开放的,所以内容的可移植性和内容的多样性2。对于开发人员来说,Android平台提供的应用软件开发的一个很好的框架,头发可以在这个平台的基础上,按照自己的想法和客户要求开发各种应用软件,也可以在这个平台上的一个新的组件开发,方便应用程序调用。基于Linux平台的系统底层,操作系统中间层,用户界面和应用软件组成的四层,它使用被称为一个软件叠层的方式进行建设。本软件叠层结构使层与层之间的分离,分工明确。这种劳动分工确保层与层之间的错误,当低层变化的时候上层应用无任何变化3。(1)应用程序在一系列的程序包一起
9、发布的Android应用程序包的连接,包括电子邮件客户端,SMS短消息的程序、日历、联系人管理、浏览器、地图等。这些应用程序基于Java语言开发的5。(2)应用程序框架API框架的开发者有完全访问核心应用程序使用。为了简化组件的重用的应用架构设计;任何应用程序都可以发布它的功能块和任何其他应用程序可以使用其所发布的功能块(安全限制,但必须遵循的框架)。同时,重用机制的应用程序还允许用户更换组件方便。每个应用程序都是隐藏在服务和一系列的系统,包括;丰富的和可扩展的视图:可用于构建应用程序,它包括一个列表,栅格,文本框,按钮,甚至可以嵌入式Web浏览器4。内容提供器:允许应用程序在另一个应用程序访
10、问数据,或者分享你自己的数据。资源管理器:提供非代码资源的访问,如本地字符串、图形、和布局文件。通知管理器:应用程序可以在状态栏中显示一个自定义消息。活动管理器:用来管理应用程序生命周期,提供了一个通用的导航回退功能。(3) 系统运行库1)程序库Android包含C / C + +库,该库可以在Android系统各部件的应用。他们提供的服务通过Android应用开发框架的。以下是一些核心库:系统C库从标准C BSD系统库(libc)继承,这是专为基于定制嵌入式Linux设备。媒体库:基于packetvideo开源的库,支持多种常用的音频,视频播放和录制,同时支持静态图像文件。编码格式包括MPE
11、G4,H.264,MP3,AAC,AMR,JPG,PNG。表面管理:管理的显示子系统,并提供了多个应用二维和三维层的无缝集成。libwebcore:新的Web浏览器引擎,为Android的浏览器和嵌入式Web视图支持。SGL:底层的2D图形引擎。3D库:OpenGL ES 1基于API;图书馆可以使用硬件加速的三维(如果可用)或高度优化的三维软件使用加速度。FreeType:位图(位图)和(矢量)矢量字体。SQLite:免费为所有应用程序,功能强大的轻量级关系数据库引擎。2)Android运行时库Android包含一个核心库,该库提供了大部分的功能性编程语言Java核心库。每个Android应
12、用程序运行在自己的进程中,有一个单独的Dalvik虚拟机实例。Dalvik被设计成一个设备可以运行多个虚拟系统的同时有效地。Dalvik虚拟机。DEX)执行Dalvik可执行文件,对于小内存使用的格式进行了优化。同时,虚拟机是基于寄存器的,通过Java编译器的所有类,然后通过SDK dx工具。dex格式由虚拟机执行。一些的Dalvik虚拟机的功能依赖于Linux内核,如线程机制和底层内存管理机制6。(3)Linux内核Android的核心服务体系依赖于Linux 2.6内核,如安全,内存管理,进程管理,网络协议栈和驱动模型。的Linux内核也作为硬件和软件之间的抽象层。2.2 安卓的应用和工作
13、机制每一个Android应用程序,主要是由活动,服务,内容提供商IntentReceiver,四部分组成,但并不意味着每一个Android应用程序的需求,这是由四个部分组成。使用应用程序清单文件时,需要配置xml函数。配置文件是每个Android应用的一个重要组成部分,定义应用程序组件和功能以及必要的条件来完成7。Android应用程序的结构和工作流程如图所示2-1:图2-1 Android的组件和工作机制2.3 系统开发应用的理论基础2.3.1 XML解析技术简介在Android开发中,经常需要对XML的操作,特别是在分析数据,需要将数据打包成XML格式的文件类型;而在参数传递给程序界面背景
14、时,也需要数据封装成XML格式的文件,它便于传输和数据分析。在Android开发平台,有解析XML文件的三种方法。(1)DOM方式创建解析XML文档DOM解析方法,基于面向对象的自动内容生成树结构模型和XML文档的层次结构。该方法的主要特点是使用简单,无需关注其分析过程。但最大的缺点是需要占用大量的内存空间,特别是当XML文档比较大,整个文档的解析和加载过程会很慢很昂贵。因此,它通常不被用于嵌入式系统内存资源是有价值的8。(2)SAX方式解析XML文档使用DOM解析XML文档,并为人们的日常思维模式是比较多的,易于使用,但它直接向文件到内存,更多的内存消耗。另外分析XML(XML的简单API)
15、-萨克斯。SAX解析速度和更少的内存的XML解析器,Android和其他移动设备非常适合9。这主要是基于事件驱动的,基于Android系统的事件处理机制是一个回调函数。这里的回调函数,可以这样理解:在SAX解析XML文档读取文件的使用,开始标签和结束标签会在读取回调事件,与其他节点将回调事件10。它不需要解析文件分析,工艺文件,SAX将确定XML语法作为当前读取字符的一部分,如果它会触发事件。2.3.2 SharedPreferences 技术简介SharedPreferences是Android平台上一个轻量级的存储类,它是以一种简单、透明的方式来保存用户对于通用字体、颜色,位置和其他一些用
16、户个性化配置的改变。它主要用于存储系统的配置信息,如一般的应用程序将提供一个“集”或“偏好”这个接口;用户登录输入用户名、密码、保留时间在下次登录时输入信息。这些设置的偏好轻完成保存功能保存。SharedPreferences主要是以键值对来存储应用程序的配置信息,它只能存储基本数据类型。一个程序的配置文件仅可以在本应用程序中使用,或者说只能在同一个包内使用,不能在不同的包之间使用。实际上,SharedPreferences是釆用了 XML格式将数据存储到设备中,在 DDMS 中的 File Explorer 中的/data/data/sharesjprefs下可查看所存储的信息11。2.3.
17、3 SQLite技术简介Android操作系统内置的SQLite数据库,关系数据库,它是一个轻量级的嵌入式系统,已应用于iPhone,Android和其他移动电话系统。SQLite的便携性与Struts框架在Web应用程序相比,Web应用程序启动时加载,ActionServlet,和初始ActionServlet的应用,从struts-config.xml文件读出ActionServlet的配置信息,存储在各种配置对象,如映射存储在ActionMapping对象的动作信息12,如如图2-2所示。图 2-2 SQLite结构图SQLite由以下几个组件组成:SQL编译器、内核、后端以及附件。SQ
18、Lite通过利用虚拟机和虚拟数据库引擎(VDBE)使调试、修改和扩展SQLite的内核变得更加方便。SQLite嵌入到使用它的应用程序中,它们共用相同的进程空间,而不是单独的一个进程。从外部看,它并不像一个关系型数据库(RDBMS),但在进程内部,它却是完整的,有自包含的数据库引擎13。2.3.4 AIDL技术简介对于客户端和服务之间的通信,虽然可以通过IBinder,但需要共享业务。如果你想沟通的话,需要使用AIDL(接口定义语言)是。AIDL接口定义语言,是用来限制在两个进程间通信的规则,因为编译器生成的代码,Android的通讯设备的两个过程的实现(IPC)14。AIDL IPC机制和E
19、JB,CORBA是非常相似的,进程之间的信息沟通,转换中的信息,然后发送给对方,对方收到AIDL消息随后被转换为相应的对象。作为双向转换的需要之间的通信过程,所以Android使用代理类实现的一个双向的信息传递的背后,Android编译器生成的代理类,对开发者来说是透明的15。3 系统的需求分析3.1 系统功能需求任意天气的开发是基于用户对于各类信息集成的需求进行开发的,目前由于手机中各类应用越来越多,用户在使用的过程中也不断提出了对于软件设计的新要求。比如功能的集成,一个软件如果能集成更多的功能,将会更方便人们的使用,并且可以减少安卓系统运行的后台,减少系统占用的资源并提高闲置手机内存,可以
20、一定程度的提高手机的运行速度。基于安卓的任意天气既是在这样的背景下进行设计研究的16。任意天气需要实现的功能就是日常生活中所需要集成的一些简单但却非常实用的功能。比如天气预报的查询及显示,在任意天气中设置了常用地点之后就可以方便快捷的显示出来,比如读取手机通讯录可以在任意天气中快捷显示。随着目前网购的越来越发达,用户的快递也逐渐增多,而快递查询的集成也很大的解决了这一问题。再如记事本、计算器功能、日历查询等都是用户日常需要的功能,当这些功能实现并集成到一个应用的时候,将会减少用户很多打开应用的等待时间、也可以帮助用户进行记忆。比方说有生活琐事的时候就打开任意天气,并在其中找到自己所需。这也正是
21、基于安卓的任意天气设计与实现的初衷。3.2 系统可行性分析可行性分析(Feasibility Analysis)也称为可行性研究,是在系统调查的基础上,针对新系统的开发是否具备必要性和可能性,对新系统的开发从用户操作,技术等方面进行分析和研究,以避免投资失误,保证新系统的开发成功。可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。由于基于安卓的小助手的设计并不会耗费太大的财力所以分析经济可行性是非必要的,在对系统目标和环境精心分析的基础上,从技术可行性和用户操作可行性等两个方面对本系统进行可行性研究。3.2.1 技术可行性安卓架构是完全开放的,且架构比较简单实用,在网络上
22、有很多安卓开发的课程培训教程,可以通过简单的学习应用上手。开发基于安卓的小助手在技术上是完全可行的。3.2.2 用户操作可行性对于这套小助手系统而言,在投入使用前,没必要对用户进行系统培训,界面采用了很简单很容易操作的方式,基本上任何人都能第一时间弄懂界面中的内容以及操作方法,可以说几乎任何人都可以使用和管理。所以本系统的操作是完全可行的。由上述分析可以看出,本系统的开发时机已经成熟,从多种角度考虑开发此系统都是可行的,并且也是十分必要的。3.3 系统开发和运行环境为了在PC主机上得到Android的开发环境,我们选择在Windows操作系统中进行对Android开发环境的搭建,具体步骤如下:
23、先下载JDK,按照提示安装成功后。绿色版的Eclipse安装下载,无需安装,和安装Android的发展提供功能。在android developers Android SDK的安装androidsdkr07windows.zip下载,下载后任意路径完成减压。运行SDK manager.exe,出现如图界面下,点击在可用的软件包。并希望SDK文档或其他软件包安装的选择,在安装时选择安装,点击接受,接受,下载并安装所选套餐。下载完成后所有的androidsdkr07windows文件夹内容如下;ADT的安装。ADT是一个工具,它可以连接到SDK和Eclipse Eclipse SDK,帮助找到开放
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业设计 论文 基于 Android 平台 任意 天气 系统 设计 实现 24
限制150内