2016-07-23 3 views
0

Я использую следующий код для извлечения всех файлов из корневой папки моего диска Google.Драйвер Api v3 не возвращает все файлы из корневой папки

List<File> result = new ArrayList<File>(); 
      Files.List req = null; 

      try { 
        req = driveService.files().list(); 
        FileList files = req.setQ("'root' in parents and trashed=false").execute(); 
        result.addAll(files.getFiles());   
        req.setPageToken(files.getNextPageToken()); 
       } 
       catch (IOException e) 
       { 
       System.out.println("An error occurred: " + e); 
       req.setPageToken(null); 
       } 

      //Print out all the files and folder of root Directory 
      for(File f:result) 
      { 
       System.out.println("recvd data are: "+f.getName()); 
      } 

Но проблема в том, что все еще не все файлы извлекаются, а только 14 файлов возвращаются с диска всегда. Может ли кто-нибудь направить меня туда, где я ошибаюсь.

Спасибо,

+0

Вы все еще испытываете эту проблему? –

ответ

0

Корневая папка также может быть решена с помощью специального псевдонима с именем 'root', так что вы можете получить все файлы и папки в корневом каталоге с помощью следующего запроса:

запрос HTTP:

https://www.googleapis.com/drive/v2/files?q='root' *in parent 

Используйте псевдоним root для параметра folderId, чтобы просмотреть все файлы в корневой папке. Все запросы к API Google Диска должны быть авторизованы аутентифицированным пользователем. Google Drive использует протокол OAuth 2.0 для аутентификации учетной записи Google и авторизации доступа к пользовательским данным. Вы также можете использовать OAuth 2.0.

List<File> result = new ArrayList<File>(); 
Files.List request = null; 

try { 
request = mService.files().list(); 
FileList files = request.setQ("'root' in parents and trashed=false").execute(); 
result.addAll(files.getItems()); 
request.setPageToken(files.getNextPageToken()); 
} 
catch (IOException e) 
{ 
System.out.println("An error occurred: " + e); 
request.setPageToken(null); 
} 

//Print out all the files and folder of root Directory 
for(File f:result) 
{ 
System.out.println("recvd data are: "+f.getTitle()); 
} 
Смежные вопросы