Quickview
- Android provides a location framework that your application can use to determine the device's location and bearing and register for updates
- A Google Maps external library is available that lets you display and manage Maps data
Topics
See Also
基于位置和地图的应用对移动设备用户来说更引人注目。你可以使用android.location
包的类和谷歌地图扩展库将这种能力构建到你的应用中。以下各部分将介绍怎样加入这些特性:
位置服务
Android 通过 android.location
包中的类使你的应用可以访问由设备来支撑的位置服务。位置框架的核心组件是LocationManager
系统服务,它提供了一些应用编程接口来确定位置和测定底层设备的方向(如果可用)。
和其它系统服务一样,你不要直接实例化LocationManager
。当然,你可以通过调用getSystemService(Context.LOCATION_SERVICE)
从系统请求一个实例。该方法返回指向一个新的LocationManager
实例的句柄。
一旦你的应用有了一个LocationManager
,就可以做如下三件事了:
- 查询到所有的
LocationProvider
的列表,以获得最新的用户位置。 - 从某个位置提供者注册/注销定期更新用户的当前位置(通过条件或名称指定)。
- 注册/注销在设备接近给定经/纬度范围(由米为单位的半径指定)内时要被激活的指定
Intent
。
要获得更多信息,阅读位置策略指南。
谷歌地图Android API
使用谷歌地图Android API, 你可以在你的应用中添加基于Google地图数据的地图。 这个API自动调用Google地图服务,数据下载,地图展示以及地图上的触控手势。你也可以使用API来加标记,多边形,遮罩层。 也可以改变地图特定区域内的用户视图。
地图包中的主要类是
MapView
。
MapView
显示承载从谷歌地图服务获得的数据的地图。
当MapView获得焦点时,它会自动捕获键盘按键和触摸手势来平移和缩放地图,包括处理网络请求获得额外的地图碎片。
它也提供了所有必需的用户界面元素给用户来控制地图。你的应用也可以使用MapView
类方法来编程控制
MapView
并在地图上绘制一定数量的修饰样式。
谷歌地图Android API没有包含在Android平台中,但是它在Android 2.2以及更高版本的拥有Google Play市场的设备中通过 Google Play services是可用的。
为了集成Google地图服务到你的应用中,你需要为你的Android SDK安装Google Play服务库。 更多细节,请阅读Google Play服务。