Xamarin.forms Xamarin具有完整功能的表单位置

Xamarin.forms Xamarin具有完整功能的表单位置,xamarin.forms,xamarin.android,xamarin.ios,Xamarin.forms,Xamarin.android,Xamarin.ios,嗨,我正在尝试用Xamarin表单构建一个应用程序,它对位置服务有很大的依赖性 使用Xamarin.Essentials,我可以得到位置,但在Android中,它给出了最后一个已知的位置,有时也不太准确 问题1 但我无法添加位置侦听器,这样一旦用户更改位置,我就可以得到通知 问题2。 如何确切地知道用户是否禁用了手机位置或应用程序位置 请引导我。。提前感谢问题#1 我不知道,但我认为Xamarin.Essentials还没有位置侦听器功能,这可能是错误的,但您可以从jamesmontemagno

嗨,我正在尝试用Xamarin表单构建一个应用程序,它对位置服务有很大的依赖性

使用Xamarin.Essentials,我可以得到位置,但在Android中,它给出了最后一个已知的位置,有时也不太准确

问题1

但我无法添加位置侦听器,这样一旦用户更改位置,我就可以得到通知

问题2。 如何确切地知道用户是否禁用了手机位置或应用程序位置

请引导我。。提前感谢

问题#1

我不知道,但我认为Xamarin.Essentials还没有位置侦听器功能,这可能是错误的,但您可以从jamesmontemagno(也是Xamarin.Essentials的主要开发人员)使用它,该插件可以跟踪地理位置的更改,如下所示:

CrossGeolocator.Current.IsListening
问题#2

根据文档,您会收到以下情况的例外情况:未授予权限或位置未启用/不受支持

try
{
    var location = await Geolocation.GetLastKnownLocationAsync();

    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
}
问题#1

我不知道,但我认为Xamarin.Essentials还没有位置侦听器功能,这可能是错误的,但您可以从jamesmontemagno(也是Xamarin.Essentials的主要开发人员)使用它,该插件可以跟踪地理位置的更改,如下所示:

CrossGeolocator.Current.IsListening
问题#2

根据文档,您会收到以下情况的例外情况:未授予权限或位置未启用/不受支持

try
{
    var location = await Geolocation.GetLastKnownLocationAsync();

    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
}

谢谢你,伙计。。将尝试实现侦听器并让您Know@NileshJha很高兴我能帮上忙,如果它解决了你的问题,别忘了把投票/标记为awnsered,如果你有什么想问的,让我知道你做了什么。。感谢您重新体验这个问题,但是xamarin essentials中是否仍然没有这样的功能?@Frnk快速查看一下,它似乎仍然没有像Anks Man那样的功能。。将尝试实现侦听器并让您Know@NileshJha很高兴我能帮上忙,如果它解决了你的问题,别忘了把投票/标记为awnsered,如果你有什么想问的,让我知道你做了什么。。感谢您再次体验这个问题,但xamarin essentials中是否仍然没有此类功能?@Frnk快速查看,似乎它仍然没有该功能