示例#1
0
 public static List <FileObject> GetFilesListFromJson()
 {
     try
     {
         if (!string.IsNullOrWhiteSpace(FileObjectsSavedList))
         {
             return(JsonConvert.DeserializeObject <List <FileObject> >(FileObjectsSavedList));
         }
     }
     catch (Exception ex)
     {
         UserDialogsService.DisplayException(ex);
     }
     return(new List <FileObject>());
 }
示例#2
0
 public static void RemoveFileFromList(FileObject obj)
 {
     try
     {
         List <FileObject> list = GetFilesListFromJson();
         if (list != null)
         {
             FileObject removeObj = list.FirstOrDefault(x => x.FileGuid == obj.FileGuid);
             if (removeObj != null)
             {
                 list.Remove(removeObj);
                 SaveList(list);
             }
         }
     }
     catch (Exception ex)
     {
         UserDialogsService.DisplayException(ex);
     }
 }
示例#3
0
        public static void AddFileToJsonList(FileObject obj)
        {
            try
            {
                List <FileObject> list = GetFilesListFromJson();
                if (list == null)
                {
                    list = new List <FileObject>();
                }

                if (list.FirstOrDefault(x => x.FilePath == obj.FileGuid) == null)
                {
                    list.Add(obj);
                }

                SaveList(list);
            }
            catch (Exception ex)
            {
                UserDialogsService.DisplayException(ex);
            }
        }
        public static async Task <bool> GetStoragePermissionsAsync()
        {
            try
            {
                var status = await CrossPermissions.Current.CheckPermissionStatusAsync(Permission.Storage);

                if (status != PermissionStatus.Granted)
                {
                    if (await CrossPermissions.Current.ShouldShowRequestPermissionRationaleAsync(Permission.Storage))
                    {
                        UserDialogs.Instance.Alert("Need External Storage Permissions.", "Permissions", "OK");
                    }

                    var results = await CrossPermissions.Current.RequestPermissionsAsync(Permission.Storage);

                    if (results.ContainsKey(Permission.Storage))
                    {
                        status = results[Permission.Storage];
                    }
                }

                if (status == PermissionStatus.Granted)
                {
                    return(true);
                }
                else if (status != PermissionStatus.Unknown)
                {
                    UserDialogs.Instance.Alert("Can not continue, try again.", "Permission Unknown", "OK");
                }
            }
            catch (Exception ex)
            {
                UserDialogsService.DisplayException(ex);
            }
            return(false);
        }