【发布时间】:2019-03-29 15:53:30
【问题描述】:
这是在 iPhone 6s 上的 iOS 12.1.4 上。通常Geolocation.GetLastKnownLocationAsync() 有效,但有时无效。这是完全相同的代码,但如果我坐在这里一遍又一遍地按下“获取纬度和经度”按钮,最终Geolocation.GetLastKnownLocationAsync() 会吐出一个空值。
您知道为什么会发生这种情况以及我应该如何处理吗?也许把它放在一个尝试十次的循环中,每次尝试之间等待一秒钟?
var location = await Essentials.Geolocation.GetLastKnownLocationAsync(); // works most of the time but sometimes it doesn't work.
这是我建议的解决方法:
Essentials.Location location = null;
for(var i = 0; i < 10; i++)
{
location = await Essentials.Geolocation.GetLastKnownLocationAsync();
if(location == null)
{
Thread.Sleep(1000);
}
else
{
break;
}
}
【问题讨论】:
标签: xamarin xamarin.essentials