我正在使用权限插件 https://github.com/jamesmontemagno/PermissionsPlugin作者:詹姆斯·蒙特马尼奥。
我基本上复制了该示例,但是在请求它的行之后权限未知。甚至没有对话框显示。
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(new[] { Permission.Location });
status = results[Permission.Location];
}
if (status == PermissionStatus.Granted)
{
//var results = await CrossGeolocator.Current.GetPositionAsync(10000);
//LabelGeolocation.Text = "Lat: " + results.Latitude + " Long: " + results.Longitude;
}
else if (status != PermissionStatus.Unknown)
{
await DisplayAlert("Location Denied", "Can not continue, try again.", "OK");
}
Debug.WriteLine("Location permission: {0}", status);
我的 Android 清单中有权限。当我将目标平台更新到 6.0+ 后,这个问题才开始出现
我还将其添加到我的 MainActivity 中
public override void OnRequestPermissionsResult(int requestCode, string[] permissions, Permission[] grantResults)
{
PermissionsImplementation.Current.OnRequestPermissionsResult(requestCode, permissions, grantResults);
}
这个问题是不同的,因为它与地图无关。我无法使用任何实时权限,因为应用程序中根本没有显示提示。