Android 手机 GPS 定位开发
Android 开发技术 2009-08-05 12:35 阅读 244 评论 0
字号: 大 中 小
Android 支持地理定位服务的 API 。该地理定位服务可以用来获取当前设备的地理位置。应用程序可以定
时请求更新设备当前的地理定位信息。应用程序也可以借助一个 Intent 接收器来实现如下功能:以经纬度
和半径划定的一个区域,当设备出入该区域时,可以发出提醒信息。
让我们来看下 android.location 包下一些比较重要的功能类。
Android Location API:
以下是几个 Android 关于定位功能的包中比较重要的类:
LocationManager: 本类提供访问定位服务的功能,也提供 获取最佳定位提供者的功能。另外,临近
警报功能 (前面所说的那种功能)也可以借助该类来实现。
LocationProvider: 该类是定位提供者的抽象类。定位提供者具备周期性报告设备地理位置的功能。
LocationListener: 提供定位信息发生改变时的回调功能。必须事先在定位管理器中注册监听器对象。
Criteria: 该类使得应用能够通过在 LocationProvider 中设置的属性来选择合适的定位提供者。
Android 也提供了一组访问 Google MAP 的 API ,借助 Google MAP 及定位 API ,我们就能在地图上
显示用户当前的地理位置:
Google Map API
Android 中定义了一个名为 com.google.android.maps 的包,其中包含了一系列用于在 Google Map
上显示,控制和层叠信息的功能类,以下是该包中最重要的几个类 :
MapActivity: 这个类是用于显示 Google MAP 的 Activity 类,它需要连接底层网络。
MapView: MapView 是用于显示地图的 View 组件。它必须和 MapActivity 配合使用。
MapController : MapController 用于控制地图的移动。
Overlay: 这是一个可显示于地图之上的可绘制的对象。
GeoPoint: 这个一个包含经纬度位置的对象。
下面让我们来实际使用它们:
示例应用 :
我们将来开发一个应用, 它将能在 Google Map 上显示用户当前的位置。 我们会通过使用 Google Ma
p API 来显示地图,然后使用定位 API 来获取设备的当前定位信息以在 Google Map 上设置设备的当前位
置。用户定位会随着用户的位置移动而发生改变。
Activity:
首先我们需要一个继承了 MapActivity 的 Activity 类: