简易位置信息共享系统的设计与实现
2015-11-29钱立
钱立
(四川职业技术学院计算机科学系,四川遂宁629000)
简易位置信息共享系统的设计与实现
钱立
(四川职业技术学院计算机科学系,四川遂宁629000)
本文以室外团队活动需要了解各自位置为需求,设计并实现了一个简易的位置共享系统.借助于普遍使用的安卓移动终端GPS功能获取定位数据,并上报给服务器端,通过服务器端页面将多个成员的位置在百度地图上显示出来.显示位置同时还可附带一些文字消息.该系统的特点是快速、高效、安全.
LBS;位置共享;GPS;安卓
基于位置的服务L BS,是指通过电信移动运营商的无线电通讯网络或外部定位方式,获取移动终端用户位置信息,在G IS平台的支持下,为用户提供相应服务的一种增值业务[1].它能根据位置找到相关的服务,比如宾馆、饭店等.智能手机标配有G P S定位功能,团队户外活动时,团队成员想要相互了解位置进行互动,变得容易实现.这种情况需要实时准确、安全可靠的共享位置信息.对于这种需求,可临时搭建一个简易位置信息共享系统.相对于城市中提供功能完善的位置服务来说,简易系统易于搭建和维护,通信快捷,去掉了不必要的服务及冗余数据,显得高效而安全.
据此,我们设计如下的简易位置信息共享系统.
1 .简易位置信息共享系统的设计
2.1 系统架构
图1 系统架构图
2.2 服务器端
服务器端是Web页面,在该页面上能接受到多个客户端的位置信息,并调用百度地图显示出各客户端的所在位置.由于客户端是移动的,G P S数据是动态的,每隔一定时间发送位置信息,所以服务器端页面也能动态显示各客户端的位置变化状况.
2.3 安卓移动客户端
安卓客户端需要通过移动通信网络访问服务器端Web页面,就能看到团队中所有成员的位置情况.但首要的是自己客户端要主动地每隔一定时间发送自己的位置信息给服务器.
该系统能完成可靠的位置共享需要几点条件保障,一是能用移动通信网络进行I nternet通信,二是G P S能准确迅速定位,三是必须提供一个可靠的Web浏览中介页面.
2 简易位置共享系统的实现
2.1 位置信息数据包及处理类的设计
位置信息数据主要包括定位的经纬度、位置人、附加信息等数据,并要求将数据用某种方式加密(如M D5).所以按照面向对象设计思想设计该数据包为一个P erson L ocation类,包括了以上几个属性,还设计了一个加密数据的方法,如下.
2.2 百度地图API服务器端Servlet和JS
2.2.1 获取多个客户端位置
服务器端为了获取多个客户端发送的位置信息,此处采用J S P的S ervlet组件实现.S ervlet组件运行于后台,它接收客户端发送的数据,并解析后存入J S P的appl ication全局变量中,关键代码如下.
2.2.2 动态Web页
由于Web页上的位置不断变化,用到动态Web技术,此处采用J S P实现,Web服务器采用Tomcat.使用百度地图J S AP I根据指定城市坐标加载指定等级的地图,各成员位置信息用百度地图覆盖物描绘,并可响应点击事件显示附带的文字信息,代码如下.
2.3 客户端Android版
2.3.1 安卓智能终端S ervice服务开发
安卓系统中S ervice组件运行于后台,其主要目的是当客户端运行后,S ervice组件获取定位G P S数据,并以每间隔时间发送位置信息到服务器端S ervlet组件,参考代码如下.
2.3.2 客户端显示地图
显示地图有两种方式.一种不考虑流量和速度问题,可直接在客户端浏览器中访问服务器那个位置信息Web页.另一种为节省客户端数据流量,获取S ervlet响应的多个成员位置信息后,可加载本地地图,在其上描绘多个位置信息.具体实现可参考高德地图L BS开发平台.
3 简易位置信息共享系统的测试
在Web页<head>标签中加入标签<meta ht tp-e q uiv="ref resh"content="10">,可每隔10秒自动刷新页面,获取最新位置信息测试如图2.
图2 测试效果图
4 结语
现实生活中有时在户外进行团队活动时,需要了解各成员的位置信息,这就需要一个位置共享系统.目前很多位置共享系统功能太过复杂,本文根据需求设计并实现了一个简易位置共享系统,该系统搭建快速方便,访问安全可靠.在此基础上,还可对该平台进行功能扩展,比如成员路径跟踪记录,增加允许查看全体成员的权限,隐藏自身位置等.
[1]百度百科-L BS词条[E B/O L].ht tp://bai k e.baidu.com.
[2]百度地图J S AP I[E B/O L].ht tp://developer.baidu.com/ map/inde x.php.
[3](美国)J ohn R esig.精通J ava S cript[M].陈贤安,江疆,译.北京:人民邮电出版社,2008.
[4](加)克尼亚万.S ervlet和J S P学习指南[M].崔毅,俞哲皆,俞黎敏,译.北京:机械工业出版社,2013.
[5]明日科技.A ndroid从入门到精通[M].北京:清华大学出版社,2012.
责任编辑:张隆辉
TP311
A
1672-2094(2015)03-0151-03
2015-03-23
钱立(1978-),男,四川遂宁人,四川职业技术学院讲师,硕士.研究方向:J ava/J S P,移动应用开发A ndroid和J ava M E,数据库应用.