FusedLocationProviderClient 在 Android Pie 9.0 中返回错误的纬度经度



我遇到仅在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

使用 fusedLocationProviderApi 并将 LocationRequest 优先级设置为 PRIORITY_HIGH_ACCURACY

这是用于准确获取位置的最新API,谷歌建议使用相同的API。

检查准确性详细信息(Android 位置提供商 - GPS 还是网络提供商?

基本上,Google Play服务API具有智能,可以通过融合GPS + NetworkProvider+被动提供商来获得准确的位置。

同时提供权限:

<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />

ACCESS_FINE_LOCATION将给出适当的结果。

最新更新