于 营
(三亚学院, 海南 三亚 572000)
引言
LBS(Location Based Service,基于位置的服务),是通过电信移动运营商的无线电通讯网络(如GSM网、CDMA网)或外部定位方式(如GPS)获取移动终端用户的位置信息,在地理信息系统平台的支持下,为用户提供相应服务的一种增值业务。随着移动互联网的高速发展,定位功能已经成为移动终端的基本配置。
截止2017年4月,Android OS的市场占有率己经到达了86.4%,远远超过苹果的IOS的市场占有率,并且还在发展。现如今市场上有百度、高德等许多优质的地图API提供者,本文系统就是应用了百度地图的API[1]。
1 相关技术1.1 开发工具
本应用在Eclipse上进行开发。Eclipse是一款开放源码,基于JAVA的开发平台,具有很强的扩展性,它提供了一个标准的扩展集,用于各种插件的扩展。正是由于Eclipse拥有这种强大的扩展性,使得Eclipse可用于各种各样的开发,包括本系统所用的安卓开发。
1.2 百度地图API
百度地图API是一个面向开发者提供的基于百度地图的应用接口,包括各种各样的开发工具和服务,包括基本地图、定位,搜索、路线规划等功能,支持多设备、多系统、多平台下的开发,支持JS API、WEB API、Android SDK、微信小程序等接口。本系统将用到百度地图Android SDK的API,用于系统中的定位和路径搜索功能等[2-3]。
1.3 BMOB后端云
BMOB后端云面向广大开发者提供,致力于解决服务器问题。它提供了优秀的数据存储功能,简单的数据修改功能,以及对数据的离线操作功能。
2 功能模块
系统功能模块划分如图1所示。
图1 系统层次图
1)注册登录:用户设置自己的用户名密码、性别以及头像,上传到BMOB后端云服务器,登录时通过密码MD5值匹配进行确认密码是否正确。
2)PM2.5:PM2.5的实时监测和显示。
3)定位功能:用户通过GPS定位功能,在系统中实时显示自己的位置。
4)运动轨迹:用户可以在系统上查看自己在最近一段时间内走过的路径。
5)路径规划:提供公交查询、驾车查询、步行查询三种方式给用户规划自己的路线,方便用户出行。
6)日志记录:相当于一个备忘录的功能。
3 API获取及工具包导入3.1 百度地图API申请
Step1:百度地图KEY申请。使用百度地图的功能与服务之前,必须先在百度地图开放平台申请一个属于自己开发程序的API key。登录百度地图开放平台http://lbsyun.baidu.com/,注册并且登录。
Step2:打开 Eclipse,依次点击 window-An-droid-Build,获取发布版SHA1。
Step3:获取百度地图key,选择Android SDK后,依次填入应用名称,开发版SHA1,包名,获取的百度地图key,如下图2。
图2 百度地图API图
3.2 获取BMOB后端云key
Step1:注册登录BMOB后端云http://www.bmob.cn/,创建应用。
Step2:打开应用,选择设置,获取Application ID,如图3所示。
图3 BMOB后端云AppID图
3.3 百度地图及BMOB后端云工具包导入
Step1:在系统开始设计之前要先进行百度地图工具包的配置以及BMOB工具包的配置,在libs文件夹下添加文件及文件夹,主要包括用于百度地图定位功能以及路径规划的JAR工具包SDK,以及BMOB后端云的工具包SDK。
Step2:百度地图API接入,在AndroidMainfest.mxl中添加如下代码:
Step3:BMOB后端云接入,新建一个java文件名为AppApplacation添加如下代码:
4 LBS应用实现
主界面主要包含每个界面功能的接口,提供6个Button,包括运动起始停止按钮、PM2.5的显示、运动轨迹的查看、路线规划、记录日志。
4.1 注册登录功能
注册功能:输入用户名和密码,点击注册,提示保存成功。查看BMOB后端云数据,服务器上存在test1这条数据,说明注册成功。如图4、图5。
图4 注册测试图
图5 登录测试图
4.2 PM2.5功能
成功获取到PM2.5信息,功能正确,如图6。
4.3 定位功能及轨迹
定位功能主要是不间断规律地获取定位信息,然后根据每次获取的位置信息连点成线,轨迹绘制模块可以根据用户的运动轨迹,在地图上绘制出来,让用户看到自己走过的路线。获取当前的正确位置信息。
图6 PM2.5图
4.4 路径规划
路线规划功能主要是用于提供运动时的方向、起点及终点路径,给使用者进行方向指引,另外兼具了公交查询、驾车路径查询的功能。
4.5 日志记录
日志记录主要是用于日常安排的记录,包括行程的安排、运动量。兼具了备忘录的功能,用户不必再切换到其他的备忘录应用即可查看自己的计划以及记录,极大程度地提高用户的体验度。随意输入字符点击保存,文本信息保存成功,如图7。成功保存,功能正常,如图8。
图7 日志记录测试图
图8 日志记录测试图