无法获取经纬度用户-Flutter



我正在使用google_maps_flutter:^2.2.0和地理定位器:^9.0.1,并试图通过从地理定位器包运行此代码来获取用户的纬度和经度

Position posisiNow = await Geolocator.getCurrentPosition(
desiredAccuracy: LocationAccuracy.high);

问题是……当我试图到达posisiNow.latitudeposisiNow.longitude时,我总是会出错,但当我只打印posisiNow时,我得到了很好的结果:Latitude: 37.33233141, Longitude: -122.0312186。尝试打印posisiNow.latitude时的错误为:NoSuchMethodError: The getter 'latitude' was called on null.我需要这些数据,因为我需要在google_maps_flutter:的函数中输入纬度和经度

controllerNow.animateCamera(CameraUpdate.newCameraPosition(
CameraPosition(
bearing: 192.8334901395799,
target: LatLng(posisiNow.latitude, posisiNow.longitude),
tilt: 0,
zoom: 16.00)));

这个问题只在ios模拟器中出现,我在android中尝试过,效果很好。我也在中提出了这个问题https://github.com/Baseflow/flutter-geolocator/issues/1135

此处target: LatLng(posisiNow.latitude, posisiNow.longitude),的纬度和经度不能为空。您可以提供默认的回退值。target:LatLng(positisiNow.latitude?0.0,posisiNow.longitude??0.0(,您需要使Position?为空。

此外,您还可以在构建此小部件之前获取位置。例如处于初始状态。

相关内容

  • 没有找到相关文章

最新更新