我有几个关于Geolocator
和 property的问题DesiredAccuracy
。
我有方法GetMyPosition
:
public async Task<Geoposition> GetMyPosition()
{
Geoposition myGeoposition = null;
Geolocator myGeolocator = new Geolocator();
myGeolocator.DesiredAccuracy = PositionAccuracy.High;
try
{
myGeoposition = await myGeolocator.GetGeopositionAsync();
return myGeoposition;
}
catch (Exception ex)
{
Deployment.Current.Dispatcher.BeginInvoke(() =>
{
MessageBox.Show("Can't get the position");
});
return null;
}
}
1) 为什么
Geolocator.DesiredAccuracy = PositionAccuracy.High;
Geolocator.GetGeopositionAsync();
总是Geoposition.Coordinate.PositionSource = Cellular
以 400 - 1600 m 的精度返回(在诺基亚 Lumia 520 设备上)?
2)在什么设置下我可以获得高精度(50 - 100 m)和PositionSource = Satellite
?
3)如果我的设备上有加载的地图并且我在设备上激活了飞行模式,那么代码
Geolocator myGeolocator = new Geolocator();
myGeolocator.DesiredAccuracy = PositionAccuracy.High;
try
{
myGeoposition = await myGeolocator.GetGeopositionAsync();
return myGeoposition;
}
将工作?没有手机,只有卫星?
4)坐标精度有多强取决于设备?
提前致谢!