首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >GetPositionAsync TaskCancelException

GetPositionAsync TaskCancelException
EN

Stack Overflow用户
提问于 2021-10-05 12:45:19
回答 1查看 33关注 0票数 0

我遇到了一个问题,当我试图获取位置信息时,系统会抛出TaskCancel异常。当时,我试着在不连接互联网的情况下打开谷歌地图(有人回答可以通过打开谷歌地图来解决),然后返回应用程序再次尝试获取位置。结果仍然是将异常返回给我。然后,我让智能手机连接到互联网,然后再次打开谷歌地图,然后再回到应用程序中获取位置。我现在可以获取位置信息了!

无法获得gps定位的问题并不是在每一部智能手机中都会发生,而是在装有Android11的Vivo V2050中发生。

有人知道这个问题吗?如何修复它?

代码语言:javascript
复制
try
{
var locator=CrossGeolocator.Current;
var position = await locator.GetPositionAsync(timeoutMillseconds: 10000);
var long=position.Longitude;
}
catch (TaskCancelException ex)
{
}
EN

回答 1

Stack Overflow用户

发布于 2021-10-06 06:34:26

根据您提供的代码,您将使用Xam.Plugin.Geolocator。

现在,我们建议改用Xamarin.Essentials

在请求权限并在清单文件中声明硬件功能后,您可以使用以下代码来获取当前位置。

代码语言:javascript
复制
   CancellationTokenSource cts;

 async Task GetCurrentLocation()
 {
     try
     {
         var request = new GeolocationRequest(GeolocationAccuracy.Medium, TimeSpan.FromSeconds(10));
         cts = new CancellationTokenSource();
         var location = await Geolocation.GetLocationAsync(request, cts.Token);

         if (location != null)
         {
             Console.WriteLine($"Latitude: {location.Latitude}, Longitude: {location.Longitude}, Altitude: {location.Altitude}");
         }
     }
     catch (FeatureNotSupportedException fnsEx)
     {
         // Handle not supported on device exception
     }
     catch (FeatureNotEnabledException fneEx)
     {
         // Handle not enabled on device exception
     }
     catch (PermissionException pEx)
     {
         // Handle permission exception
     }
     catch (Exception ex)
     {
              // Unable to get location
     }
 }

 protected override void OnDisappearing()
 {
     if (cts != null && !cts.IsCancellationRequested)
    cts.Cancel();
     base.OnDisappearing();
 }

有关更多详细信息,您可以查看MS文档。https://docs.microsoft.com/en-us/xamarin/essentials/geolocation?tabs=android

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69450717

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档