Symbian OS应用编程LBS位置服务篇之架构

来源:互联网 发布:简单的java服务器 编辑:程序博客网 时间:2024/04/29 20:19

 

Symbian OS LBS功能针对两类用户,一是开发位置应用程序的开发者,另一类是终端制造商。对于应用程序开发者来说,Symbian OS 提供了获取位置的APILocation Acquisition API),这些API可以获取位置信息,应用程序开发人员基于这些API可以开发位置服务程序。Symbian OS给手机制造商提供的LBS开发借口很多,虽然对于应用程序开发人员不开放,应用程序开发人员也不用去关注,但对于相关的结构需要有一个了解。

 

整个Symbian OSLBS系统包括位置请求管理(Location Request Management)、位置管理(Location Management)、网络适配层(Network Adaptation)、数据源适配层(Data Source Adaptation)及数据源模块(Data Source Modules)这五个大的模块,其中每个模块又包括很多相关的组件。如下图所示:

                                                             Symbian OS LBS modules

 

1 LBS 系统模型图(源自:SDL

 

 

 

这些模块分别在不同的功能区域中。主要的功能有位置框架(The Location Framework)、网关框架(The Network Gateway Framework)和网络请求处理服务(The Network Request Handler Service)。下图三个巨型区域代表了三个功能区:

 

LBS functional module

2 LBS功能块

 

前面讲过,关于定位对于不同的精确度有很多不同的技术和方法(见http://blog.csdn.net/pursuer_zhao/archive/2009/02/14/3889771.aspx),在Symbian OS中有基于网络Cell-IDGPS/A-GPS硬件来定位两种方法。Symbian OS支持四种不同的位置请求类型,分别是MO-LRMobile Originated Location Requests),即移动发起自我定位请求;MT-LRMobile Terminated Location Requests),即对其他移动终端的定位请求,当然这会涉及到隐私请求(privacy requests);紧急MT-LREmergency MT-LR)和位置汇报请求(MO-LR transmit to third party),即将自己的位置信息发给第三方的请求。

 

下面按照功能对Symbian OSLBS系统结构作一简单的介绍。

 

位置框架(The Location Framework

位置框架是LBS系统中处理位置请求的部分,主要负责为客户端程序提供位置信息、汇集本地请求,并给底层的定位调度和转发请求。这个框架独立于定位技术,并且可以同时使用多种定位技术,包括位置服务器(The Location Server)、网络位置管理器(The Network Location Manager)、A-GPS位置管理器(The A-GPS Location Manager)和A-GPS集成模块这几个组件。如下图标红的组件:

 

LBS framework

3 位置框架组件

 

       位置服务器(The Location Server)是Symbian OS 中的服务程序,管理来自客户端程序的位置请求(MO-LR)。客户端程序通过使用Location Acquisition API来发送请求,通常对于每个请求,位置服务器使用网络位置管理器(The Network Location Manager)或A-GPS位置管理器(The A-GPS Location Manager)来获取位置。

 

      网络位置管理器(The Network Location Manager)负责从网络获取位置。当通过网络能够获取MO-LR所需精度的位置信息时,位置服务器程序发请求(MO-LR)给网络位置管理器,网络位置管理器就与网关框架(Network Gateway Framework)进行交互,从网络获取位置信息。

     A-GPS位置管理器(The A-GPS Location Manager)负责从GPS获取位置信息。同样,当通过GPS能够获取MO-LR所需精度的位置信息时,位置服务器程序发请求(MO-LR)给A-GPS位置管理器,A-GPS位置管理器通过A-GPS集成模块获取GPS数据信息。A-GPS位置管理器同样可以与网关框架交互,从网络获取相关的辅助信息。

     网络请求处理器(The Network  Request Handler)也可以给A-GPS位置管理器发送MT-LRMO-LR请求,获取GPS位置信息。

 

网关框架(The Network Gateway Framework

 

网关框架是LBS系统中与网络交互的一部分,主要包括网关处理(The Network Gateway Process)、网络协议插件模块(The Network Protocol Plug-in Module)和才。

 

网关处理(The Network Gateway Process)主要是处理LBS系统中与网络的交互,在通信时使用协议模块插件(protocol module plug-in)并执行以下功能:

  • 从网络接受位置请求(MT-LR Emergency MT-LR)转发给网络请求处理服务器(Network Request Handler Server)。
  • 发送计算好的位置信息给网络。
  • 发送GPS 数据给网络并取回计算后的位置。
  • A-GPS辅助数据发送请求给网络并接收相应。
  • 通过网络给远端发送位置信息。

 

网络协议插件模块(The Network Protocol Plug-in Module)允许网关处理使用特定的网络协议,它通过Symbian OSETel API 与网络交互。这是给手机制造商实现自己协议模块提供了一个框架。

 

网络协议插件模块(The Network Protocol Plug-in Module)是Symbian提供的允许LBS系统接收隐私请求。

 

网络请求处理服务(The Network Request Handler Service

 

网络请求处理服务由网络处理服务器(Network Request Handler Server)组成。网络处理服务器(Network Request Handler Server)主要有两个功能,一是处理来自网络的位置请求(MT-LR Emergency MT-LR),并依据请求的类型按要求确认是否可以发送到网络,如果有足够的权限,就与位置框架(Location Framework)交互以获取位置信息;另一功能是初始化要发给远端移动设备位置信息的请求,这些信息初始化后,与位置框架(Location Framework)交互获取位置。

 

 

原创粉丝点击