请找到下面的代码片段,它会在IOS中出错,但在Android设备中会出现错误:
aasync void Handle_Clicked(object sender, System.EventArgs e)
{
var locator = CrossGeolocator.Current;
locator.DesiredAccuracy = 50;
var position = await
locator.GetPositionAsync(timeoutMilliseconds: 10000);
logi.Text = position.Latitude.ToString();
lati.Text = position.Longitude.ToString();
}
答案 0 :(得分:0)
这是iOS上的已知问题,但在Android上运行良好。
事实证明,您设置的timeout
参数对于任务完成而言太短,因此每次都会取消。
await locator.GetPositionAsync(TimeSpan.FromSeconds(10));
请参阅我的post