【发布时间】:2019-10-20 20:36:08
【问题描述】:
我在仅在 Android Pie 中使用 FusedLocationProviderClient 获取纬度经度时遇到问题,我在 Android 版本 9.0(Pie) 以下得到了正确的位置
每次我调用 getLocation() FusedLocationProviderClient 都会提供相同的纬度。
mFusedLocationClient.getLastLocation().addOnSuccessListener(new OnSuccessListener<Location>() {
@Override
public void onSuccess(Location location) {
if (location != null) {
wayLatitude = location.getLatitude();
wayLongitude = location.getLongitude();
Log.e("Location11", "" + String.format(Locale.US, "%s - %s", wayLatitude, wayLongitude));
} else {
mFusedLocationClient.requestLocationUpdates(locationRequest, locationCallback, null);
}
}
});
我每次都得到相同的纬度。 喜欢 纬度- 28.303303303303 经度- 77.411411411
【问题讨论】:
-
“最后已知位置”不会更新,除非某些应用程序调用“requestLocationUpdates()”。也许您在该设备上遇到了一个不是最新的位置(?)打开谷歌地图并等待它指向您当前的位置在这种情况下会有所帮助。一个真正的解决方案是始终在您自己的应用程序中请求位置更新。如果您不需要持续更新,则可以在第一个结果后取消请求。
-
@MarkusKauppinen 我也做了同样的事情,但它在 Android Pie 下完美运行