Ejemplo n.º 1
0
 public static async Task <bool> PedirPermiso(Permissions.BasePermission Permiso, string Mensaje = "Permita el acceso")
 {
     return(await Device.InvokeOnMainThreadAsync(async() =>
     {
         PermissionStatus status = await Permiso.CheckStatusAsync();
         if (status != PermissionStatus.Granted)
         {
             if (IsDisabled(Permiso))
             {
                 await Acr.UserDialogs.UserDialogs.Instance.AlertAsync(Mensaje, "Atención.");
             }
             await Permiso.RequestAsync();
             status = await Permiso.CheckStatusAsync();
         }
         return (status == PermissionStatus.Granted);
     }));
 }
Ejemplo n.º 2
0
        public async Task RequirePermission(Func <Task> task, Permissions.BasePermission permission, Func <Task> taskToNotPermission = null)
        {
            var status = await PermissionService.CheckAndRequestPermissionAsync(permission);

            if (status != Xamarin.Essentials.PermissionStatus.Granted)
            {
                //await UserDialogService.AlertAsync("Não é possive continuar, permissão não concedida");

                if (taskToNotPermission != null)
                {
                    await taskToNotPermission.Invoke();
                }

                return;
            }

            await task.Invoke();
        }
Ejemplo n.º 3
0
 public PermissionItem(string title, Permissions.BasePermission permission)
 {
     Title      = title;
     Permission = permission;
     Status     = PermissionStatus.Unknown;
 }
Ejemplo n.º 4
0
 public static async Task <Xamarin.Essentials.PermissionStatus> GetPermissionStatus(Permissions.BasePermission Permiso)
 {
     return(await Device.InvokeOnMainThreadAsync(async() =>
     {
         PermissionStatus status = await Permiso.CheckStatusAsync();
         return status;
     }));
 }
Ejemplo n.º 5
0
 public static bool IsDisabled(Permissions.BasePermission permission) => permission.ShouldShowRationale();
Ejemplo n.º 6
0
 public static async Task <bool> TenemosPermiso(Permissions.BasePermission Permiso) => (await GetPermissionStatus(Permiso) == PermissionStatus.Granted);