ANDROID平台公交查询工具的设计与实现设计.doc
《ANDROID平台公交查询工具的设计与实现设计.doc》由会员分享,可在线阅读,更多相关《ANDROID平台公交查询工具的设计与实现设计.doc(32页珍藏版)》请在沃文网上搜索。
1、ANDROID平台公交查询工具的设计与实现摘要出行一直是人们日常生活中不可或缺的一部分。就目前情况而言,公交车仍是大多数人出行的首选的交通工具。人们的出行是无时无刻不在的,web查询服务无法满足人们突发、即时的查询。但随着手机的普及,功能的强大,使用的方便,它已成为人们生活工作中获取各种信息的主要途径之一,借助于无线互联网,人们可以直接通过手机随时随地地查找公交线路的信息,进一步提高公交的服务水平。本毕业设计主要是以福州公交线路为主进行设计的系统,它基于android平台开发的,利用Eclipse开发工具,主要以JAVA语言编写,以及Android的一些控件,选择SQLite作为目标数据库,应
2、用SQL语言实现对数据库的操作,地图部分使用谷歌地图。它主要实现的功能有换乘查询,将乘车的次数默认设置为三,将乘车次数最少的方案显示在最前面,还有线路查询和站点查询功能,不仅能显出查询的结果,而且还能够根据用户选择的线路实现电子地图的显示,使系统更加直观。本文详细地介绍了开发该系统所要用到的技术,接着介绍各个功能的概述和数据库的设计,然后是讲解系统各个功能实现的详细过程,尤其是详细地介绍了在Google map地图基础上的各个图层的开发,最后展示成品的最终结果,指出自己系统存在的不足之处。关键字:Android,SQLite,Google mapDesign and Implementatio
3、n of a Bus Routes Search Tool for Android PlatformAbstractIt is indispensable to going out in our daily life. In the light of present situation, bus is still the first choice for most people. People may go out all the time, hence, web search service can not satisfy the sudden and immediate demands.
4、As mobile phones become widespread, multifunctional and convenient, it has been an important way to get information through the wireless Internet in our life. We can directly get information about bus routes through the mobile phones at all times and all places. The bus service quality will further
5、improved.This graduation project is a system designed for Fuzhous bus routes. It is developed based on Android platform and written in JAVA language. It utilizes Eclipse development tool, some basic combination controls of Android system and Google map. It takes SQLite as target database and is oper
6、ated by SQL language. One of its major functions is to search the changes of rides. It takes 3 as the default value of ride times. The program with the least times will be shown at the first. It can also search the routes and bus stations. It not only gives the results, but also shows them on the el
7、ectronic map according to the users choices, which makes the system more visual.This thesis elaborates the technologies used in the system, their functions and the design of database. Then, it explains the implementation process of every function, especially the development of each picture layer bas
8、ed on Google map. Lastly, it shows the final result of the project and point out its shortages.Key words: Android, SQLite, Google map27目 录第1章 绪论11.1 研究背景11.2 研究现状11.3 研究目的及意义21.4 本次课题研究内容21.5 本文组织结构2第2章 Android相关技术背景介绍32.1 Android操作系统简介32.1.1 Android简介32.1.2 Android的特点32.1.3 Android架构32.2 SQLite简介42
9、.3 Android布局管理器52.4 Android基本组件介绍52.4.1 Activity简介52.4.2 Intent简介62.5 Toast的使用72.6 Google Map介绍7第3章 系统总体结构设计83.1 系统主要功能模块83.2 数据库设计83.2.1 数据库概念模型设计83.2.2 数据库表设计93.2.3 数据库的相关操作10第4章 公交系统的实现114.1 欢迎界面的实现114.2 主要功能的实现114.3 Google Map的使用154.3.1 地图开发的前期准备154.3.2 地图的初始化164.3.3 地图图层的开发16第5章 整体测试与分析改进185.1
10、截图及运行说明185.2 软件可以改进之处23结论24参考文献25谢辞26附录1 部分关键源码及解释27ANDROID平台公交查询工具的设计与实现第1章 绪论1.1 研究背景随着城市规模的逐步扩大,使整个城市的交通干道越来越复杂。在这种情况下,城市公共交通运输以其覆盖面广、经济、快捷的特点,成为绝大多数出行者的首选方式,也是各地城市政府大力推荐的一种出行方式。因为它从很大程度上缓解了交通压力,改善了交通状况。要想提高公交服务的水平的途径很多,其中很重要的一条途径就是提高智能公交系统的建设。但是我国城市公交车查询系统的发展还处于一个相对落后的水平,广大乘客可以获取公车线路的方式很少,而且线路的完
11、整性、准确性及实时性无法得到保证。1.2 研究现状国外许多国家都十分重视公交查询的研究和应用。其目的在于通过提供及时准确的信息和服务,吸引更多的出行者使用公共交通,促进公交的大力发展,减缓城市的交通压力。尤其是美国,他们的研究取得了较好的效果。他们发展公交查询系统的特点是能够提供快捷、方便的电话咨询服务;与定位技术相结合,提供实时信息服务;触摸屏在公共场所的广泛使用以及查询与网络的结合。欧洲一些国家,如芬兰、意大利等,他们在研究公交查询方面也取得了不小的成果。近年来,我国的公交查询系统也在迅速地发展,不少城市也都有拥有公交线路查询系统,网络上也可以下载到许多不同的版本。不过公交查询系统在发展的
12、同时也存在一些问题,需要不断地改进和完善。比如早期的公交查询系统脱离了网络,只是一种供人下载后方可查询的程序,是一种单机程序。这样的信息不够准确,也不够及时。有一部分公交查询系统,它们只是简单地将各个线路和站点的信息一一罗列出来,让用户自己去一条条查找。而真正意义上的公交查询系统应该是用户输入想要查询的内容,系统能够自动查询出结果,而不是靠用户人工进行查询。还有一部分网上的公交查询系统,它们的系统功能比较完善,实现站点、线路查询以及换乘查询,更加完善一点的系统还有电子地图查询等功能,但是对城市有代表性的地点介绍和查询的功能,做得好的比较少。还有就是手机上的公交查询系统,可以采用短消息的形式进行
13、查询,但也有一定的局限性。硬件方面,比如遇到服务器、网络繁忙时或者信号盲区,导致用户请求长时间得不到回应。软件方面,运营商不一定提供此类的查询服务。现行的公交车系统或多或少都还是存在一些缺陷的。但是随着技术的更新以及不断的改进,相信可以做出更人性化、更完善的公交查询工具。1.3 研究目的及意义出行是人们日常生活中不可或缺的一部分,而公交车是大多数人出行首选的交通工具,如何才能随时随地、方便快捷的获取公交线路的信息,合理安排自己的出行线路,是很多人非常关心的问题。建设智能公交系统,利用当代高新技术:电子、信息、通信、计算机、GPS、GIS等,将交通系统中的人、交通设施和交通工具有机的联系起来,建
14、立智能公交系统,如公交优先系统、公交查询系统、智能化行车系统等,为乘客提供实时的更多更全面的出行信息,更好的为乘客服务1。在智能公交系统中,公交查询系统的服务是目前最贴近乘客日常生活的,也是最能让乘客亲身体会公交服务水平高低的方面。因此,如何给乘客提供一个良好的平台,让乘客选择或是推荐合适的乘车方案出行,以节约乘车时间,缩短到达目的的乘坐距离,减少乘坐的票款成本,才是提高公交服务水平最值得关注的问题之一2。越来越多的人倾向通过上网获得和共享信息,随着网络应用的普及而不断的发展,Internet的应用成了世人关注的焦点3。智能公交查询系统既提供全面的公交信息,更具有实用性、便利性、多样性。因此我
15、们提出开发并设计了一个基于Android平台的公交查询系统。用户可以在任意一款Android手机中安装此工具。通过此查询工具可以查看线路,查找任意两地的乘车方案等,更方便用户出行,节约时间,减缓交通压力。1.4 本次课题研究内容本次毕业设计要研究的内容是学会界面的设计,进行数据库的设计并学会使用SQLite数据库,学会在Google Map的基础上进行地图开发。1.5 本文组织结构第二部分为关键技术介绍,主要介绍本系统中所涉及到的主要关键技术,第三部分是关于系统总体结构设计,主要介绍系统的功能模块和数据库的设计与实现。第四和第五部分就是系统详细的设计与实现及测试结果等,然后对整个毕业设计进行了
16、总结,最后部分为致谢。第2章 Android相关技术背景介绍2.1 Android操作系统简介2.1.1 Android简介Android是Google在2007年11月宣布的基于Linux平台的开源手机操作系统的名称,而在Android系统底层方面,Android使用C/C+作为开发语言4。该平台由操作系统、中间件、用户界面和应用软件组成,号称是首个为移动终端打造的真正开放和完整的解决方案。2.1.2 Android的特点Android系统就是一个开发式的手机和平台电脑操作系统5,早期由Google开发,后由开放手机联盟开发6。它提供了从底层操作系统到上层的程序界面的所有软件,使用这个平台无
17、需缴纳任何的授权许可费用,同时不同的厂商还可以根据自身的需求修改和扩展Android平台。在Android平台下,除了应用程序运行的载体虚拟机之外,所有的Android应用程序之间是完全平等的。所有的应用程序都运行在虚拟机上面,虚拟机提供了一系列用于应用程序和硬件资源间通信的API。Android打破了应用程序之间的界限,在Android平台下开发应用程序,可以很方便的实现应用程序之间的数据共享。一个应用程序不但可以通过API访问系统提供的功能,还可以通过申明自身的功能供其他应用程序调用7。Android为开发人员提供了大量的使用库和工具,使得开发人员可以快速地创建自己的应用程序。例如Andr
18、oid将著名的Google Map集成进来,开发人员通过简单的几行代码就可以快速的开发出基于地图的应用。2.1.3 Android架构图2-1显示的是Android操作系统的主要组件。Android同一个核心应用程序包一起发布,该应用程序包括email客户端,SMS短消息程序,日历,地图,浏览器,联系人管理程序等。所有的应用程序都是用Java编写的。Android应用程序框架即开发者也完全可以访问核心应用程序使用的API框架。该应用程序架构用来简化组件软件的重用:任何一个应用程序都可以发布它的功能模块并且任何其他的应用程序都可以使用其所发布的功能模块(不过得遵循框架的安全性限制)。该应用程序重
19、用机制使得组件可以被用户替换8。图2-1 Android系统架构图2.2 SQLite简介SQLite是一款轻型的数据库,是遵守ACID的关联式数据库管理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。Android 在运行时(run-time)集成了 SQLite,所以每个 Android 应用程序都可以使用 SQLite 数据库。SQLite 支持多数 SQL92 标准,很多常用的SQL命令都能在SQLite上面使用,除此之外Android还提供了一系列自定义的方法去简化对SQLite数据库的操作9。S
20、QLite 由以下几个组件组成:SQL 编译器、内核、后端以及附件。SQLite 通过利用虚拟机和虚拟数据库引擎(VDBE),使调试、修改和扩展 SQLite 的内核变得更加方便。SQLite 和其他数据库最大的不同就是对数据类型的支持,创建一个表时,可以在CREATE TABLE 语句中指定某列的数据类型,但是你可以把任何数据类型放入任何列中。当某个值插入数据库时,SQLite 将检查它的类型。如果该类型与关联的列不匹配,则 SQLite 会尝试将该值转换成该列的类型。如果不能转换,则该值将作为其本身具有的类型存储10。2.3 Android布局管理器Android本身是一个权限分立的操作系
21、统。在这类操作系统中,每个应用都以唯一的该系统主要用到的布局有线性布局和帧布局。(1) LinearLayout类线性布局是最简单的布局之一。android:orientation可以设置线性布局的朝向,可以是水平(horizontal)或者垂直(vertical)两种排列方式。同时使用android:gravity设置控件的对齐方式,还可以通过设置控件的weight参数控制各个控件在容器中的相对大小。(2) FrameLayout类FrameLayout帧布局在屏幕上开辟出了一块区域,在这块区域上可以添加多个子控件,但是所有的子控件都被对齐到屏幕的左上角。帧布局的大小由子控件尺寸最大的那个子
22、控件来决定。如果子控件一样大,同一时刻只能看到最上面的子控件,因为在FrameLayout中,子控件是通过栈来绘制的 11。2.4 Android基本组件介绍2.4.1 Activity简介Activity是android最常用的组件,是应用程序的表示层,Activity一般通过View来实现应用程序的用户界面,相当于一个屏幕,用户与程序的交互是通过该类实现的。 Activity类创建了一个窗口,开发人员可以通过 setContentView(View)接口把UI放到activity创建的窗口上,当activity指向全屏窗口时,也可以用其他方式实现:作为漂浮窗口(通过windowIsFloa
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
20 积分
下载 | 加入VIP,下载更划算! |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- ANDROID 平台 公交查询 工具 设计 实现