我想获得用户的位置精度(圆的半径(,单位为米。
我找了大约一天,但找不到解决这个问题的办法。
Position position = await Geolocator.getCurrentPosition(
desiredAccuracy: LocationAccuracy.best);
//This is gives from 0-100m accuracy on Android, instead of best or high, I want to be able to pass the accuracy in meters.
如何以米为单位精确测量精度?
在询问SO之前,请仔细阅读文档。
geolocator
和location
封装都提供了这种能力。
geolocator
包在其使用的Position
对象上具有accuracy
属性。
final geo = Geolocator();
final location = await geo.getCurrentPosition();
print(location.accuracy);
location
包在其使用的LocationData
对象上具有accuracy
属性。
final loc = Location();
final locData = await loc.getLocation();
print(locData.accuracy);
我建议您阅读文档
import 'package:geolocator/geolocator.dart';
Position position = await Geolocator.getCurrentPosition(desiredAccuracy: LocationAccuracy.bestForNavigation);
查看此表
也不要忘记将这些添加到您的清单文件中
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />