应用在请求设备的位置信息时,它可以等待请求响应,也可以通过使用主动位置信息监听器来获取机会性位置信息更新。这一功能在 Android 9 及更低版本中提供(且不受限制),并且在应用仅指定主动位置信息更新频率且将被动更新频率留空时提供(被动位置信息监听器不指定位置信息更新频率,因此不会收到机会性位置信息更新)。
从 Android 10 开始,要获取机会性位置信息更新,开发者必须指明他们需要从 FusedLocationProviderClient
类获取被动位置信息更新。
一体化位置信息提供方
应用可以通过两种方式指定从 FusedLocationProviderClient
类获取机会性位置信息更新的频率。
- 在
setFastestInterval
方法中指定一个值,该值应小于setInterval
参数的值。(使用 0 毫秒或更大的值)。 - 不指定
setFastestInterval
的值,让系统自动设置该值。
影响
如果您未提供 setFastestInterval
的值,则传递给应用的位置信息更新可能会大幅减少。
实现
除了使用 FusedLocationProviderClient
类 setFastestInterval
方法的建议值,您无需执行其他任何操作即可实现此功能。