论文部分内容阅读
随着社会的发展,人们的活动范围越来越不确定,这给移动定位业务提供了无限商机和挑战。越来越多的移动定位业务需要更高的定位精度和更短的响应时间。由OMA(开放移动联盟)提出的基于SUPL(安全用户平面)的A-GPS(辅助全球定位系统)技术已经成为3G移动定位业务中最有发展前景的定位技术。基于A-GPS定位技术的定位业务的发展和应用,离不开与用户直接交互的智能手机。然而面向智能手机的定位业务开发仍然存在着一些困难:由于GPS硬件和手机操作系统的不同,定位应用开发商和手机制造商需要针对不同的硬件和操作系统开发定位业务,从而造成定位业务的平台独立性差、设备无关性差、开发周期长等困难。因此智能手机中能够为定位业务提供精确位置信息的定位代理就成为研究热点。
本文以智能手机中的SUPL定位代理为研究内容。采用协议分层设计思想、模块化设计思想、随需扩展思想,提出了一种定位代理软件设计方案。所设计的定位代理由PER编/解码模块、TLS传输模块、Wap Push接收模块、SUPL状态机模块、GPS管理模块、定位服务模块以及应用程序接口模块组成。在PER编/解码模块的设计中采用面向对象的设计方法,克服了传统基于编译器方法的种种弊端,增强了具体协议编码的灵活性。在TLS传输模块中,设计了连接列表,存储已经建立的连接,在发送数据时,可以复用已经建立的连接,减少了建立连接的资源消耗。在SUPL状态机模块的设计中采用了State设计模式,解决了基于结构化方法的有限状态机实现复杂、代码难以重用、维护复杂、扩展性差的问题。在GPS管理模块中,引入了“引用计数”技术,通过需要使用GPS的定位请求的个数来控制GPS芯片的自动开启与关闭。该技术解决了在多次定位中由于频繁打开关闭GPS芯片而耗费过多能量的问题。本文所设计的PER编/解码模块和SUPL状态机模块都具有跨平台的移植能力,方便定位代理适应不同的智能手机操作系统平台,具有良好的兼容性。本文所设计的SUPL定位代理可同时为2G/2.5G和3G网络服务,有利于定位业务在不同网络之间的无缝迁移。最后经过测试,表明该定位代理的定位精度和响应时间都达到了定位业务的要求。