LBS数据库的架构是怎样的

LBS数据库的架构是怎样的:第一部分为LBS客户端管理部分,主要提供给客户端应用使用,客户端应用调用此部分提供的功能进行位置定位。LocationManager,提供给客户端应用调用,获取位置等信息,同时当有位置信息变化时通知客户端应用。

一、LBS数据库的架构是怎样的

1)第一部分为LBS客户端管理部分,主要提供给客户端应用使用,客户端应用调用此部分提供的功能进行位置定位。

LocationManager,提供给客户端应用调用,获取位置等信息,同时当有位置信息变化时通知客户端应用。

LocationListener,提供给客户端应用注册使用,每个客户端应用对应一个LocationListener,通过LocationManager注册到系统维护的一个位置服务的链表中,当系统中发现有位置信息变化或者其它信息变化时,会通过它通知客户端应用。

GpsStatus,提供给客户端应用获取GPS定位服务的状态。

GeoCoder,提供给客户端应用调用,获取地理编码信息。

2)第二部分为LBS系统服务部分,开机时启动此服务LocationManagerService,一方面负责处理LBS客户端管理提供的定位等功能需求,另一方面启动提供定位功能的功能模块。

3)第三部分为LBS的定位功能服务部分,完成定位服务模块的定位等动能。

GpsLocationProvider,提供GPS定位服务,通过GPS底层模块获取位置信息及状态变化,通知LBS系统服务来获取位置信息及状态变化等。

LocationProviderProxy,提供网路定位服务,会通过ILocationProvider调用LocationProvider提供的定位功能。LocationProvider只是提供了一个抽象的定位服务模块,并没有真正实现定位功能,需要用户去实现继承LocationProvider来完成此功能。

GeocodeProxy,提供地址编码服务,会通过IGeocodeProvider调用GeocodeProvider提供的正反向地址编码功能。GeocodeProvider只提供了一个抽象的反向地址编码服务模块,根据经纬度来获取地址信息,它并没有真正实现反向地址编码功能,需要用户去实现继承GeocodeProvider来完成此功能。

二、LBS目录结构

(1) frameworks/base/services/java/com.android.server/LocationManager.java

提供的系统定位服务类。

(2) frameworks/base/services/java/com.android.server.location/

提供给系统定位服务使用的相关类。

(3) frameworks/base/location/lib/java/com.android.location.provider/

提供的抽象定位服务模块类以及地址编码服务模块类。供用户继续以实现某种定位功能。

(4) frameworks/base/location/java/android.location

提供给客户端使用的定位服务相关类。

来源:https://blog.csdn.net/yingchunhua365/article/details/14118943

延伸阅读

事务隔离级别是什么

事务具有ACID属性,而事务的隔离级别可以不同程度的解决事务并发时可能产生的问题,可以根据不同业务逻辑需求,来选择不同的事务隔离等级,事务隔离等级越高,越能保证数据的一致性,但就更趋近于串行化,降低并发性能,导致效率变低。

文章包含AI辅助创作:LBS数据库的架构是怎样的,发布者:E.Z,转载请注明出处:https://worktile.com/kb/p/53853

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
E.Z的头像E.Z

发表回复

登录后才能评论
注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部