2016-07-23 11 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 

パラメータfolderIdに別名rootを使用して、ルートフォルダ内のすべてのファイルを一覧表示します。 GoogleドライブAPIへのすべてのリクエストは、認証されたユーザーによって承認されている必要があります。 Googleドライブは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()); 
} 
関連する問題