0

我有一个Xamarin.Forms application, 它使用Xamarin.EssentialsPlugin.Permissions插件。

permissionStatus = await CrossPermissions.Current.CheckPermissionStatusAsync(Permission.Location);

UWP,它抛出一个异常

“服务器执行失败”。

任何想法可能导致它,以及如何解决这个问题?

4

1 回答 1

0

根据您的代码,我猜您想请求并检查位置权限,如果是,您可以查看以下代码来请求位置权限。

 try
        {
            var status = await CrossPermissions.Current.CheckPermissionStatusAsync(Permission.Location);
            if (status != PermissionStatus.Granted)
            {
                if(await CrossPermissions.Current.ShouldShowRequestPermissionRationaleAsync(Permission.Location))
                {
                    await DisplayAlert("Need location", "Gunna need that location", "OK");
                }

                var results = await CrossPermissions.Current.RequestPermissionsAsync(Permission.Location);
                status = results[Permission.Location];
            }

            if (status == PermissionStatus.Granted)
            {
                var results = await CrossGeolocator.Current.GetPositionAsync(TimeSpan.FromSeconds(10));
                LabelGeolocation.Text = "Lat: " + results.Latitude + " Long: " + results.Longitude;
            }
            else if(status != PermissionStatus.Unknown)
            {
                await DisplayAlert("Location Denied", "Can not continue, try again.", "OK");
            }
        }
        catch (Exception ex)
        {

            LabelGeolocation.Text = "Error: " + ex;
        }

请在之前检查 package.appxmanifest 中的位置。

于 2019-08-27T05:57:19.850 回答