使用 Google 定位服务查找设备位置
1. 请求位置更改更新
在大多数情况下,获取最后已知位置可能无法满足需求。因为该值可能很快过时,而且大多数位置敏感型应用需要对用户移动做出反应,而查询最后已知位置并不会强制定位服务进行更新。
1.1 requestLocationUpdates 方法
可以使用 requestLocationUpdates
方法,通过 LocationCallback
请求设备位置的定期更新。 LocationCallback
还会通知设备位置信息可用性的变化。
1.2 LocationRequest 对象
requestLocationUpdates
方法接受一个 LocationRequest
对象,该对象为融合定位提供程序(Fused Location Provider)提供信息,以确定在所需的精度和准确度级别上返回结果的最有效方式。为了优化效率、降低成本和功耗,可以根据应用需求指定以下标准:
| 方法 | 描述 |
| — | — |
| setPriority
| 可使用以下常量之一来指示降低电池消耗和获取准确结果的相对重要性:
- PRIORITY_HIGH_ACCURACY
:表示高精度是优先考虑的,融合定位提供程序将尝试以增加电池消耗为代价获取最精确的位置,通常用于地图和导航应用。
- PRIORITY_BALANCED_P