基于Android平台的公交查询系统的设计与实现

2018-09-14 10:27余基映向真彪
电脑知识与技术 2018年16期
关键词:Android平台

余基映 向真彪

摘要:为了提高当今城市公交系统的智能化服务水平,方便移动终端用户获取实时的公交路线信息,设计基于Android平台的公交路线查询系统。利用聚合数据平台提供的数据接口,获取到本系统需要的公交信息,运用百度地图开放平台提供的接口进行精准定位及周边公交站点显示,应用广度优先算法、最短路径算法等对公交信息进行筛选排序,通过Android应用程序接口、数据解析及一些开源项目完成软件设计及编码。本系统为居民出行提供了极大的便利。

关键词:Android平台;公交路线查询;聚合数据;百度地图开发

中图分类号:TP311 文献标志码:A 文章编号:1009-3044(2018)16-0086-03

1 引言

城市交通压力不断加重,公交线路也越来越多,许多公交线路及车辆信息也不时在发生调整,因而居民难以掌握公交路线的实时信息。为了改善城市公共交通系统的服务能力,便于广大居民出行,获取实时公交路线信息,从而设计基于Android平台的公交路线查询系统。本系统为用户提供实时公交信息,提高出行效率,提升居民的幸福指数,从而提升城市公交的服务水平[1-2]。

2 系统设计

2.1 功能需求设计

公交查询系统包含如下四个模块:搜索,乘车,附近,个人。其对应的功能需求图如图1所示。

2.2 流程图设计

公交查询系统有两个核心模块:“搜索”模块和“乘车”模块。

“搜索”模块,系统自动为用户当前位置定位,用户可以选择城市,输入公交线路或者站点,点击搜索按钮,请求网络服务或者加载本地数据库公交信息进行显示,“搜索”流程图如图2。

“乘车”模块,起点为用户的当前位置,考虑到扩展性,可手动输入起点,然后输入终点,还可以交换按钮交换起点终点,点击搜索按钮,请求网络数据或者加载本地数据库数据,显示“乘车”搜索的结果集,用户可根据需求进行筛选结果集,得到想要的出行路径。“乘车”流程图如图3。

2.2 数据库设计

系统使用SQLite数据库[3]。SQLite是一款轻型的嵌入式数据库,它占用资源非常的低。它提供了是一些函数接口,可以用这些函数操作数据库[4]。数据库名称为“gjt”,其中包含几个表:BusLineResult,BusLineStationDes,PassBusResult,TransferBusLineResult,usualResult,TransferBusLineSegmentList。

3 系统开发环境

系统使用的操作系统为Android 4.0,开发工具为ADT,Android手机,数据库为SQLite Expert Professional 3,开发语言为Java。

3.1系统的开发环境搭建

Google公司官方提供了集成式开发工具IDE ADT-Bundle for Windows[5]。包含了编译运行工具Eclipse,并且包含了各种方便实用的开源插件,有利于Android开发人员通过Eclipse来配置Android开发环境,环境搭建步骤如下:

1)安装Java开发语言开发包jdk。

2)下载开发工具ADT-Bundle for Windows。根据自己的要求安装ADT-Bundle。

3)安装Android SDK,打开安装的开发工具Eclipse里面的SDK Manager.exe,选择自己需要的模拟器等。

3.2 百度地图开发的引入

系统开发之前,需要在百度地图开发页面注册申请密钥。百度地图申请Key成功之后,输入系统的应用名称,选择需要的服务内容,其中的包名为该系统“公交查询系统”的包名,SHA1为开发工具Eclipse中自带的值。将百度地图开发所需的Jar包和相应So文件加入“公交通”工程的目录下,再将其添加在“公交通”應用的AndroidManifest.xml中,配置申请的key。

3.3聚合数据接口

聚合数据是提供原始数据API服务的综合性云数据平台。“全国公交及路径规划查询”是聚合数据平台中由天翼电信提供的数据获取途径,用户在聚合数据注册认证,申请数据成功之后,就可以查询到申请的AppKey [6]。按照其指定的数据获取方式,就能得到公交路线相关数据。

4 系统实现

4.1搜索模块的实现

输入公交线路可以完成查询(如:211),公交信息结果如图4。“搜索”页面也可以输入公交站点(如“五和路口”公交站点),搜索显示结果如图5。

4.2 乘车模块的实现

用户输入起点公交站台、终点站台后,系统则以列表的形式显示乘车信息。比如起点为“湖北民院”,终点为“火车站”,搜索结果如图6。本系统提供了“最快捷”“少换乘”“少步行”“不乘地铁”几种方式。

聚合数据提供的接口根据给定地点的经纬度进行查询,字符串拼接得到URL,利用xUtils下HttpUtils的对象以Get方式请求服务器端获得Json数据,请求成功时onSuccess会自动被调用,失败时onFailure方法会被调用,onSuccess中数据返回时利用Google提供的Gson进行解析数据,数据被解析并暂存在实体对象中,同时存储在数据库中便于没有网络的情况下查询。

5 结束语

基于Android平台的公交查询系统,通过聚合数据平台提供的数据接口,运用百度地图开放平台提供的接口为居民提供便捷的公交查询服务。系统还有一些功能没有完善,比如搜索页面城市的检索,乘车页面的算法改进实现等,同时还有实时数据获取、存储方面还有待改善,今后在此基础上不断改善,力求提高用户使用满意度。

参考文献:

[1] 王海峰.基于Android平台的城市公交查询系统的设计与实现[J].计算机时代,2013(4):26-28.

[2] 孙金华,孟昭睿,李晓伟.基于Android系统的厦门公交查询系统设计[J].重庆科技学院学报:自然科学版,2014,16(6):115-118.

[3] 唐敏, 宋杰.嵌入式数据库SQLite的原理与应用[J].电脑知识与技术, 2008,1(4):600-602.

[4] 尹京花, 王华军.基于Android开发的数据存储[J].数字通信, 2012, 39(6):79-81.

[5] Nicholson T A J. Finding the shortest route between two points in a network[J]. Computer Journal,2006,9(3):275-280.

[6] 聚合数据[EB/OL].https://www.juhe.cn/.

猜你喜欢
Android平台
基于Android平台软件开发技术研究
基于Android平台的家用无线防盗报警系统研究