融合位置提供者并不总是根据标准返回位置

时间:2021-07-14 07:48:13

标签: android fusedlocationproviderapi android-fusedlocation fusedlocationproviderclient

我有这个用于请求位置更新的代码:

private var fusedLocationClient = LocationServices.getFusedLocationProviderClient(context)

locationRequest = LocationRequest.create().apply {
                    priority =
                        when (locationProviderType ?: SettingsProvider.getProviderType(context)) {
                            LocationChangeProviderType.HIGH_ACCURACY -> LocationRequest.PRIORITY_HIGH_ACCURACY
                            LocationChangeProviderType.BALANCED -> LocationRequest.PRIORITY_BALANCED_POWER_ACCURACY
                        }
                    interval = timeIntervalInMillis
                    maxWaitTime = timeIntervalInMillis
                    smallestDisplacement = minDistanceInMeters
                }
                fusedLocationClient.requestLocationUpdates(
                    locationRequest,
                    locationCallback,
                    Looper.getMainLooper()
                )

timeIntervalInMillis= 1000minDistanceInMeters = 10f。 但是提供程序不会返回具有此条件的更新。例如,即使我走得很慢,我也只能在 100 米内步行和查看更新两次。即使使用 PRIORITY_HIGH_ACCURACY,也会发生这种情况。 如何解决?

0 个答案:

没有答案
相关问题