Xamarin UWP 项目中的 CrossGeolocator returns 当前位置错误

CrossGeolocator in Xamarin UWP project returns a wrong current location

我的 Xamarin UWP 项目中的 CrossGeolocator returns 当前位置错误。它 returns 对我来说的位置是明尼苏达州莱克维尔。但我住的地方离它很远。这是代码:

   var locator = CrossGeoLocator.Current;
   locator.DesiredAccuracy = 100;
   var position = await locator.GetPositionAsync(TimeSpan.FromSeconds(20), null, true);

问题出在哪里?有什么建议吗?

谢谢!

CrossGeolocator in Xamarin UWP project returns a wrong current location

如果您的设备不包含GPS传感器,CrossGeoLocator api将优先获取当前位置和IP地址。如果您的本地网络使用VPN代理,会导致地图根据代理的ip地址找到对应的位置,从而使位置与实际位置有偏差。

but right now I cannot try working without vpn.

如果你不能使用禁用vpn。更好的方法是将 GPS sensor 添加到您的设备。它具有更高的优先级。