Android位置服务和Google地图API初解
位置服务
Android支持GPS和网络地图,通常将各种 不同的定位技术称为LBS。LBS是基于位置的服务(Location Based Service)的简称,它是通过电信移动运营商的无线电通信网络(如GSM网、CDMA网)或外部定位方式(如GPS)获取移动终端用户的位置信息(地 理坐标,或大地坐标),在地理信息系统(Geographic Information System,GIS)平台的支持下,为用户提供相应服务的一种增值业务。
android.location的功能类
Android 支持地理定位服务的API。该地理定位服务可以用来获取当前设备的地理位置。应用程序可以定时请求更新设备当前的地理定位信息。应用程序也可以借助一个 Intent接收器来实现如下功能。以经纬度和半径划定的一个区域,当设备出入该区域时,可以发出提醒信息。在下面的内容中,开始讲解 android.location中和定位有关的功能类。
一. Android Location API
以下是包中几个Android关于定位功能的比较重要的类:
1、LocationManager:本类提供访问定位服务的功能,也提供获取最佳定位提供者的功能。另外,临近警报功能 (前面所说的那种功能)也可以借助该类来实现。
2、LocationProvider:该类是定位提供者的抽象类。定位提供者具备周期性报告设备地理位置的功能。
3、LocationListener:提供定位信息发生改变时的回调功能。必须事先在定位管理器中注册监听器对象。
4、Criteria:该类使得应用能够通过在LocationProvider中设置的属性来选择合适的定位提供者。
二. Map API
Android也提供了一组访问Map的API,借助Map及定位API,用户就能在地图上显示当前的地理位置。在Android中定义了一个名为com.google.android.maps的包,其中包含了一系列用于在Map上显示,控制和层叠信息的功能类,以下是该包中最重要的几个类:
1、MapActivity:这个类是用于显示Map的Activity类,它需要连接底层网络。
2、MapView:是用于显示地图的View组件,它必须和MapActivity配合使用。
3、MapController:用于控制地图的移动。
4、Overlay:这是一个可显示于地图之上的可绘制的对象。
5、GeoPoint:一个包含经纬度位置的对象。