毕业论文-基于android查询地铁软件的设计与实现.doc_第1页
毕业论文-基于android查询地铁软件的设计与实现.doc_第2页
毕业论文-基于android查询地铁软件的设计与实现.doc_第3页
毕业论文-基于android查询地铁软件的设计与实现.doc_第4页
毕业论文-基于android查询地铁软件的设计与实现.doc_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

中北大学信息商务学院毕业设计说明书基于android查询地铁软件的设计与实现学生姓名: 2016年05月21日原 创 性 声 明本人郑重声明:所呈交的毕业说明书/毕业论文,是本人在指导老师的指导下,独立进行研究所取得的成果。除文中已经注明引用的内容外,本文不包含其他个人或集体已经发表或撰写过的科研成果。对本文的研究做出重要贡献的个人和集体,均已在文中已明确方式标明。本声明的法律责任由本人承担。作者签名: 日期: 使 用 授 权 声 明本人完全了解中北大学信息商务学院有关保管、使用毕业设计说明书的/毕业论文的规定,其中包括:学院有权保管、并向有关部门送交毕业设计说明书/毕业论文的原件与复印件;学院可以采用影印、缩印或其他复制手段复制并保存毕业设计说明书/毕业论文;学院可允许毕业设计说明书/毕业论文被查阅或借阅;学院可以学术交流为目的,复制赠送和交换毕业设计说明书/毕业论文;学院可以公布毕业设计说明书/毕业论文的全部或部分内容。 作者签名: 日期: 导师签名: 日期: 中北大学信息商务学院2016届毕业设计说明书基于android查询地铁软件的设计与实现 摘要:随着互联网和智能手机的飞速发展,手机操作系统的发展越来越好,越来越快,其中android手机操作系统更是占有手机市场的很大份额,android手机中的各种应用软件也是层出不穷。越来越多的各式各样的应用软件充斥着手机应用市场。其中有关旅行交通的软件也有很多。随着人们生活的进步,更多的人出行时选择公共交通公具,而到达一个陌生的城市时,公交地铁更成了人们出行的首选,手机可以更好的更方便的使人们获得公交地铁的信息,所以关于公交地铁的软件的出现成为了必然。本设计主要是以地铁为主设计的一款查询软件,该软件的设计思想基于android系统平台开发,使用了Eclipse这个开发工具,主要以Java编程语言编写代码,让它与xml所写的布局文件结合起来,还选择使用了Sqlite数据库保存一些必要的数据,利用SQL语言对这个数据库进行一定的查询,它主要实现了的功能有地铁换乘查询的功能,站点查询的功能,以及线路查询的功能,用户能根据自己的所需要的选择不同的查询方式来进行查询。本文详细叙述了开发本查询软件系统所要用到的核心技术,并且介绍各个功能的概述和数据库的设计,然后解释各个功能的实现的详细过程,最后再展示成品的最终结果,指出软件仍然存在的不足之处。关键词:android;地铁;查询Iandroid software of query subway Abstract:With the rapid development of Internet and smart phones, mobile phone operating system development is getting better and better, faster and faster, the android mobile phone operating system but also occupies a large share of mobile phone market, all kinds of application software is also emerge in endlessly in android. More and more all kinds of application software with the mobile application market. The relevant travel software also has a lot of traffic. With the progress of peoples life, more and more people travel choice when public public transportation, and arrived in a strange city, bus subway travel has become the first choice, more mobile phone can better more convenient to make people obtain information of the bus subway, so about the emergence of software bus subway became inevitable. This design is the main subway on the design of a query software, the software design based on the android platform development, the use of Java Eclipse integrated development tools, mainly in the Java language, combined with an XML layout file, select the Sqlite as the database, using SQL language implementation to the operation of the database, it is mainly the functions have a change to the query, query site, as well as the route query, easy to query the user can choose according to their own needs. This paper describes the development of this query software system used by the core technology, and introduces the overview of the function and database design, and then explain the realization of the function of each process in detail, and then show the final result of the finished product, software still exist deficiencies are pointed out. keywords:android;subway;queryII目 录摘要Abstract目录1 绪论11.1 课题简介11.2 研究的背景与意义11.3 主要实现的功能21.4 论文的整体结构22 开发平台与开发语言简介32.1 Android操作系统的介绍32.1.1 Android简介32.1.2 Android系统特色32.1.3 Android基本架构32.2 开发工具和开发语言的介绍32.2.1 开发工具Eclipse简介32.2.2 开发语言简介43 开发中使用到的关键技术53.1 关于界面布局的几种方式53.2 数据库53.3 百度地图API poi关键字搜索53.4 百度地图简介54 查询地铁软件的系统设计64.1 地铁线路查询设计64.2 地铁站点站点设计64.3 地铁换乘查询设计6III4.4 查询数据库设计65 查询地铁软件的系统实现75.1 地铁查询功能的实现75.1.1 地铁线路查询的实现75.1.2 地铁站点查询的实现75.1.3 地铁换乘查询的实现75.2 站点查询数据库的建立85.3 百度地图API的使用95.3.1 百度地图SDK简介:95.3.2 百度地图SDK的使用:96 地铁查询系统的测试运行106.1 站点查询测试106.2 线路查询测试116.3 换乘查询测试127 总结13致 谢14参 考 文 献15附 录A16IV1 绪论1.1 课题简介一座城市所拥有的公共交通的能力,在一定的程度上反映了这个城市的规模和经济发展的水平,因为城市规模大了,经济发展水平高了,城市的流动人口量才会大,人口流动量大了,才会促使城市的公共交通能力的发展更为迅速。高水平的公共交通能力,也能够促使城市化水平的发展,城市规模大了以后,城市的公交交通系统就会变大而且覆盖面也广,并且对很对人来说它的价格会便宜很多,所以多数人选择乘坐公共交通公具,经济又环保。在这样复杂的公共交通条件下,应该合理的为出行者规划出行方案,让出行者随时随地的获取某些公交车地铁的站点信息和线路信息,使得人们的出行更方便。然而对于大部分出行者来说,对一个城市的道路状况并不是很清楚,往往不能够选择最适合自己的出行路线。本课题旨在开发一款基于Android的城市地铁查询系统,能够对城市地铁系统进行系统的规划,让出行这可以根据自己的实际情况进行线路查询、地铁站点查询和换乘查询,能够更方便且智能的给出理想的出行路线,且具有一定的选择性。1.2 研究的背景与意义随着现在社会的飞速发展,我们的生活也在不断地前进,经济的不断发展,避免不了人们经常要来往各个城市。但是人们不可能对每个城市都熟悉,一旦你对到了一个陌生的地方,你的出行就会举步维艰。出租车,对于一些出差的人可以接受,一般有公司给报销,但对与一般的人来说就会不划算。因此,让人们快速的获得一个城市的公共交通信息尤为重要,现在几乎人人都有一部手机,人们获取信息的最佳途径就是手机,因此可以开发一款查询公共交通信息的软件供人们所使用,帮助人们方便、更有效的出行。移动互联网发展到现在,3G和4G通信技术的也已近很成熟了,而移动电话已经成为了人们生活中必不可少的物品 。应运而生的地铁查询系统是可以方便人们的使用查询,它将大量的地铁信息扩展到移动设备上,为移动用户获取信息提供了高效和便捷。基于Android的查询地铁软件的开发,可以很容易地利用一些开放的API接口,市场上的一些开源的框架,SDK,所以,基于Android的查询地铁软件,是一个很有前景的设计。1.3 主要实现的功能本课题设计的主要任务是将三种查询结合在一起,设计出一款能随时查询地铁站点及其信息的手机软件。帮助解决由于复杂的轨道交通系统给用户带来的困惑与不便的问题,帮助准备出行的人士方便、有效率的安排自己的行程。用户不仅能够根据自己喜好进行查询,还可以让出行者随时随地根据自己的喜好选择最佳的出行路线,可以直接获得想要乘坐的地铁信息,选择最适合自己的出行路线。1.4 论文的整体结构本软件基于Android平台,选择AndroidSDK,百度地图SDK和JAVA Eclipse等开发工具,本软件设计开发的地铁查询模块,主要是以上海地区为主。根据上海市的轨道交通信息,使用XML文件完成本软件的界面的布局的搭建,其中有部分适合Java代码结合在一起实现的,程序代码使用了JAVA语言,设计实现了对地铁的线路、站点、换乘的详细信息和方案的的查询功能。经过一定的研究和分析,本软件所撰写的说明书分为以下几个部分:1.绪论,介绍课题及其研究背景和意义,以及本文的主要工作和设计说明书的组织结构。2.开发平台与开发语言简介,介绍本次课题开发的时候使用到的一些技术,android的概念和使用的工具。3.开发中使用到的关键技术,介绍了在开发软件过程中主要使用的一些关键性技术。4.查询地铁软件的系统设计,阐述本课题的总体设计,所要实现的一些功能。5.查询地铁软件的系统实现,主要介绍课题的具体实现逻辑结构与程序编写。部分详细代码在附录中。6.地铁查询系统的测试运行,主要介绍程序运行的测试结果。7.总结,总结本文的主要内容以及本软件的不足之处。2 开发平台与开发语言简介2.1 Android操作系统的介绍2.1.1 Android简介 Android是由Google这个公司推出来的的一个操作系统平台,是开放式的,它基于Linux系统。Android它给出了从操作系统的底层到上层的程序界面的软件,是任何人都能够开发的开源的平台,而且不同的手机厂商还能按照自己的需要来修改。2.1.2 Android系统特色 Android作为开源的操作系统,它有很多特色,例如它的源码是开放的,挣脱了运营商的的约束,不在收他们的管制;有很丰富的硬件选择,给android提供使用的硬件有很多,开发商不受限制,可以根据自己的需要进行修改,它还能和好多的很好用的Google应用结合起来。2.1.3 Android的基本架构 应用层,应用程序框架层,内核层和底层库。图2.1.3 Android的架构2.2 开发工具和开发语言的介绍2.2.1 开发工具 Eclipse是一个开发程序的工具,可以开发好几种语言,JAVA、C/C+ 等,它使用方法简单,界面好看,有好几种风格,重要的是它可以集成Android开发。2.2.2 开发语言简介以JAVA为基础的,但是开发环境不一样。在编写的过程中不是单纯的Java语言,而是利用java文件与xml文件结合,开发android应用。3 开发中使用到的关键技术3.1 关于界面布局的几种方式开发一个Android应用程序的时候常用的界面布局的方式有五种,分别是:FrameLayout (单帧布局),LinearLayout (线性布局),AbsoluteLayout (绝对布局),RelativeLayout (相对布局),TableLayout (表格布局)。3.2 数据库 Android程序使用的是系统中自带的数据库SQLite数据库,这个数据库有很多特点。零配置:可以不用进行配置和管理就能使用,所以它使用起来会很方便。开源性:源代码完全公开,可以任意修改,使用。简单:简单易用使用的Api。跨平台:它在Linux系统下和Windows系统下都都可以正常的使用和运行。支持大容量文件:它可以进行大容量的数据存储。速度快:数据操作起来速度更快。单个数据库文件:SQLite的数据库文件就是一个一般的普通文件。一个Sqlite数据库就是一个文件,一般是放在手机SD卡的里面,可以被Android系统调用。3.3 百度地图API poi关键字搜索利用一个或者是多个关键字,来进行用户想要查找到的一些东西,例如,美食,游乐场之类的东西。这里使用的是百度地图SDK中的一个借口来实现我想要的功能。3.4 百度地图简介百度地图 Android SDK是对于Android系统来开发的,在开发程序的时候可以使用它的接口来实现自己的逻辑。使用这些接口的程序开发人员可以使用它来开发一些适用于Android系统移动端设备也就是手机或者平板电脑的地图应用。通过调用这些个接口,合理使用,可以设计出一些功能很多、与用户的沟通较强的地图类应用程序,或者带有部分地图效果的其他应用程序,也可以使用这些就扣中的某一个接口实现开发人员想要实现的某个功能。4 查询地铁软件的系统设计4.1 地铁线路查询设计线路查询功能主要针对用户明确了乘车线路,但是不清楚想要到达的时所乘坐的地铁的哪一个站点,或是用户想知道这条线路上的所有信息,它的主要功能是给用户查询后显示所查询到的该线路的所有站点信息。它主要的功能和这个功能的实现方法是:用户在界面上输入想要查询的线路的名字和要查询的城市的名字,如果用户在文本框中输入的东西不符合系统的需求,系统就会弹出提示给用户,让用户知道自己的输入有问题。系统会根据用户输入的那些正确的线路的名字和城市的名字,利用检索方法,进行查询,如果存在有相应的线路的信息,将查询到的信息显示出来。4.2 地铁站点站点设计 站点查询的功能是根据用户输入的要查询关键性的信息来的,查到线路的信息以后要将它显示出来。它的这个功能的实现逻辑是:用户在界面上输入要查询的站点名字,系统先判断这个输入的信息是否是正确的,确认正确才进行下一步,否则会弹出提示。系统会在数据库中进行仔细的查询并获得经过该站点的所有的地铁线路名字,如果查询结果不存在,则提示没有查询到经过该站点的地铁,如果存在了一条或者多条地铁线路,则将查询到的这些地铁的线路名字显示出来让用户看到。如果用户点击查询到的每一条线路的话,还可以获得该线路的详细信息。也就是该线路上的站点的信息。4.3 地铁换乘查询设计换乘查询的功能主要是根据用户输入的起点终点给出换乘方案。它主要有以下功能:根据用户输入的起点和终点,经过Poi检索,获取换乘信息,呈现在用户面前,让用户自己选择最适合自己出行的路线4.4 查询数据库设计将概念模型里的实体及属性转换成关系模型,进行需求分析后了解到本系统需要一张表:stations表,记录所有地铁站点信息,以下是系统中所用的表的结构:表4.4 stations字段名数据类型是否主键是否为空字段含义idint是否idstationString否否站点名lineString否否线路名5 查询地铁软件的系统实现5.1 地铁查询功能的实现5.1.1 地铁线路查询的实现线路查询主要实现的是根据用户输入的想要查询的线路的名字,查询出经过这条线的站点。当进入线路查询界面时,输入当前要查询的的城市city,和需要查询的线路line的名字,然后进行查询,系统会判断用户输入信息是否为空,为空则弹出toast给用户提示,不为空则执行查询操作,通过CircuitFragment类中的searchLine()方法查询详细信息,获得的详细信息,跳转到CircuitActivity页面,将信息利用ListView显示出来,ListView显示数据主要利用了Adapter。每一行使用使用一个可以显示文字的TextView,将需要显示的文本放入这个控件中,再将它通过getView()放到ListView的每一个item中,显示出来每一行列表的内容 。5.1.2 地铁站点查询的实现站点查询实现的功能是查找所有与经过该站点的地铁线路信息,当进入站点查询界面时同线路查询一样,输入你想要查询的站点名,点击查询按钮,系统判断输入信息是否为空,为空则弹出toast给用户提示,不为空则执行查询操作,在数据库中查询,如果查询导数据则调转到StationActivity页面将查询到的信息通过ListView显示出来。给ListView的每一项设置监听器,当用户点击某一项时通过StationActivity类中的方法查询结果,并将结果跳转到另一页面显示出来。站点查询目前仅支持上海地区的地铁站点查询。5.1.3 地铁换乘查询的实现换乘查询主要实现的是两地之间的使用公共交通公具的不同方案,当进入换乘查询界面时同线路查询一样,输入你当前要查询的当前城市的名字,例如上海,路程的起点名称和终点名称,然后点击查询按钮,系统会判断输入的信息是否为空,乳为空则会弹出toast给用户提示,不为空则执行查询操作,系统将通过查询方法进行查询。查询完毕后,将查询到的结果在TransferActivity中依次显示出来,当用户点击某一个方案时,弹出对话框显示该方案的详细信息。5.2 站点查询数据库的建立(1)数据库表的创建 主要通过SQL语句建立表和插入部分数据,将所有SQL语句放入一个工具类中,在通过SqliteDateBase调用的方法执行SQL语句即可实现建表和初始化数据功能。(2)数据库的相关操作主要对数据库中的一些数据进行查询操作。连接并且打开数据库以后,查询数据库中的数据,先连接到数据库,然后将查询到的结果以Cursor对象返回,在while循环中调用其moveToNext方法进行遍历,最后返回查询结果,返回结果集。5.3 百度地图API的使用5.3.1 百度地图SDK简介:百度地图 Android SDK是基于Android的很多的接口,它有很多各种各样的借口可以使用,使用开发者可以通过它的某一接口实现自己想要完成的功能,例如:地图展示;地点检索;地理编码;路径规划;定位服务;周边雷达探索;云检索等,它还有一些特色功能,例如短传分享等。5.3.2 百度地图SDK的使用:(1) 申请秘钥在百度地图API平台上申请秘钥,建立项目。(2) 新建Android工程在Eclipse中建立工程,将需要的jar包导入建好的这个工程当中,并在清单文件中添加相关信息,在application中添加百度开发者秘钥,并添加一些权限;在Application的onCreate()方法中添加SDKInitializer.initialize(getApplicationContext();6 地铁查询系统的测试运行6.1 站点查询测试 在输入框中输入了徐家汇,获得结果如下图所示图 6.1 站点查询结果6.2 线路查询测试在输入框中分别输入了上海、地铁一号线获得结果如下图所示图6.2 线路查询结果6.3 换乘查询测试 在输入框中分别输入了上海、虹桥火车站、上海火车站获得结果如下图6.3 换乘查询结果127 总结 截止到现在,本查询系统已基本完成了所需功能要求的设计、开发,但此系统任然还存在有一些不足之处,部分需要提高、改进和完善的地方:界面设置的还不够友好,用户使用时的体验感和便捷性还有待提高。查询结果所显示的信息应更加的完善丰富。可以增加导航的功能,让用户可以直从附近搜索到的车站直接导航找到所要去车站的路线,这样可以更加方便用户的使用。没有地铁进站的时间。到现在为止,我已经差不多把这个课题所研究的内容完成了,也实现了基本的功能,完成了从这个程序设计的需求分析、详细的设计、具体功能的实现、功能的测试和部署的全部工作。以后这种类型的程序肯定会出现的多一点,希望我这次设计的这个程序在以后能完善一点,变得更好。致 谢为期四年的大学生活就快要结束了,在这四年中,经历了太多太多,有喜有悲,忽然一下就要毕业了,突然,感觉到的却是有点无奈,一路走来,发现还有好多一起上课但我却叫不上名字的同学,渐渐发现,这四年的生活其实也并没有我想象中的那么枯燥,也没有那么无聊。我的大学生活并不是充满着激情,我没有我想象中的那么热爱生活,反而,它将的我的意志一点一点的消磨着。不管怎么说,这四年我也曾经努力过,也曾经热血过。在这,我要感谢我的学校,她让我成长了很多,我变的更加成熟,更加的热爱生活,这四年的大学,是最难忘的记忆了。我要谢谢我的指导老师对我毕业设计的帮助,他不辞辛苦的帮助我解决了一些我没有解决掉的一些难题,让我的毕业设计能完整的展现出来。感谢我大学中一起上课,一起成长的的同学们,这几年在一起的生活,让我收获了很多,谢谢你们这四年来与我一起的经历,一起的努力。参 考 文 献1 陈晓东,公交线路最优选择设计,科技经济市场,2008年,第2期,P782 邹明霞,基于Web的公交查询系统的设计与实现,华中科技大学,2008年3 韩超,梁泉Android系统原理及开发要点详解 北京:电子工业出版社2010.4 舒贤华.基于Android平台的手机认飞b地图服务设计D.大连海事大学.2009 5 杨丰盛Android应用开发揭秘M. 北京:机械工业出版社, 20106 张运芳Android 创赢路线与产品开发实战M. 北京:电子工业出版社, 20107 何 晶.面向智能手机导航地图系统的设计和实现D.武汉大学.20058 祝洪娇.基于Android平台的位置服务系统的设计与实现D. 北京交通大学 20129 郭凯敏,吾守尔斯拉木,李少雪.基于Android平台的本地化技术J. 计算机应用. 2010(S2) 10 王以忠,迟成,陈绍慧,张平,李达,黄国全.SQLite数据库在嵌入式果蔬保鲜运输车监测系统中的应用J. 保鲜与加工. 2011(04) 11 孙育春Google Maps API开发大全M北京:机械工业出版社,2010-01-0110-2812 李刚,编著疯狂Android讲义,北京:电子工业出版社,2011年,P11014213 陈淮. 基于Android游戏开发中常用类库的设计与实现D. 西安电子科技大学 201114 公磊,周聪.基于Android的移动终端应用程序开发与研究J.计算机与现代化. 2008(08)15 张鹏. 中国企业为什么青睐Android?J. 通信世界. 2010(03)16 Android五年内将主导智能手机市场N. 中国计算机报. 2011-04-25 (001)17 黄惠钦. 安卓流量使用超越苹果IOS 丰富应用成就优势地位N. 通信信息报. 2011-06-08 (B12)附 录A软件程序部分核心代码A1 线路查询部分核心代码PoiCitySearchOption citySearchOption=new PoiCitySearchOption();BusLineSearchOption option=new BusLineSearchOption();citySearchOption.city(searchCity);citySearchOption.keyword(keyword);poiSearch.searchInCity(citySearchOption);poiSearch.setOnGetPoiSearchResultListener(new OnGetPoiSearchResultListener() Overridepublic void onGetPoiResult(PoiResult result) / TODO Auto-generated method stubif(result.error.equals(SearchResult.ERRORNO.NO_ERROR)result.getAllPoi();for (PoiInfo poi : result.getAllPoi() city=poi.city;if (poi.type.equals(PoiInfo.POITYPE.SUBWAY_LINE) uid=poi.uid;Overridepublic void onGetPoiDetailResult(PoiDetailResult arg0) / TODO Auto-generated method stub);option.uid(uid);option.city(city);busLineSearch.searchBusLine(option);busLineSearch.setOnGetBus

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论