Quantcast
Channel: Recent Threads — Xamarin Community Forums
Viewing all articles
Browse latest Browse all 204402

Google Drive API - Unable to list Folders

$
0
0

Using Google.Apis.Drive.v3 the following code is not extracting folders list, whatever I do. What could be wrong with my setup? It doesn't matter whether I use 'async' or otherwise, folders.Count is zero. As such no item contains anything other than "#drive/file" in MimeType. As such same code in another app get even files.Count as zero.

        public async Task<List<StorageItem>> ListAllFiles()
        {
            List<File> result = new List<File>();

            FilesResource.ListRequest request1 = driveService.Files.List();
            request1.Fields = "nextPageToken,files(*)";
            request1.Q = "trashed=false and mimeType='application/vnd.google-apps.folder'";
            IList<File> folders = request1.Execute().Files;

            FilesResource.ListRequest request = driveService.Files.List();
            request.Fields = "nextPageToken,files(*)";
            request.Q = "trashed=false";
            request.Corpora = "user";
            //request.IncludeItemsFromAllDrives = true;

            //IList<File> filesList = request.Execute().Files;

            do
            {
                try
                {
                    FileList files = await request.ExecuteAsync();

                    result.AddRange(files.Files);
                    request.PageToken = files.NextPageToken;
                }
                catch (Exception ex)
                {
                    Debug.WriteLine("Error in listing files: " + ex.Message);
                    request.PageToken = null;
                }

            } while (!String.IsNullOrEmpty(request.PageToken));

            List<StorageItem> filesList = new List<StorageItem>();

            for (int i = 0; i < result.Count; i++)
            {
                StorageItem storageItem = new StorageItem();

                storageItem.Id = result[i].Id;
                storageItem.Name = result[i].Name;
                storageItem.IsFolder = result[i].Kind.Contains("folder");
                storageItem.MimeType = result[i].MimeType;
                storageItem.Size = (long)result[i].Size;
                storageItem.CreatedDT = (DateTime)(result[i].CreatedTime?.ToLocalTime());
                storageItem.LastModifiedDT = (DateTime)(result[i].ModifiedTime?.ToLocalTime());
                storageItem.Owner = result[i].Owners.FirstOrDefault().DisplayName;
                storageItem.LastModifiedBy = result[i].LastModifyingUser.DisplayName;
                storageItem.ParentPath = "";
                storageItem.ParentId = result[i].Parents.FirstOrDefault();

                filesList.Add(storageItem);
            }

            return filesList;
        }


Viewing all articles
Browse latest Browse all 204402

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>