2013-07-21 4 views
7

Sto cercando di cercare file nell'unità con Java, ma non sono sicuro di come impostare le condizioni. L'esempio fornito nello video tutorial è in Python. Quindi, in sostanza qui è il metodo che recuperare l'elenco dei file dall'unità:Ricerca di file (con condizioni) nell'SDK di Google Drive utilizzando Java

private static List<File> retrieveAllFiles(Drive service) throws IOException { 
    List<File> result = new ArrayList<File>(); 
    Files.List request = service.files().list(); 

    do { 

     try { 
      FileList files = request.execute(); 
      result.addAll(files.getItems()); 
      request.setPageToken(files.getNextPageToken()); 
      } catch (IOException e) { 
       System.out.println("An error occurred: " + e); 
       request.setPageToken(null); 
      } 
    } while (request.getPageToken() != null && 
      request.getPageToken().length() > 0); 

    return result; 
} 

Ora, accennano here che il metodo File.List accetta il parametro q. Come lo posso fare? Quando provo ad impostare il parametro con esempi come il dato nel video dove q = "title contiene 'fruit'", non funziona. Che cosa sto facendo di sbagliato? La request.queue() è usata per questo?

Grazie

risposta

5

L'ho trovato. Penso che la documentazione dell'SDK di Google Drive debba essere un po 'meno ambigua.

Files.List request = service.files().list().setQ("mimeType = 'application/vnd.google-apps.folder'"); 
+0

Esattamente. Cosa intendi con "meno ambiguo", sarebbero utili alcuni modi specifici per migliorarlo. Grazie! –

+1

Bene, penso che i documenti siano davvero specifici con alcuni esempi per alcune lingue, ma vaghi con altri. Mi ci è voluto un po 'di tempo per trovare questo metodo, e alla fine non è solo il parametro "q" che sto passando; è un metodo completamente nuovo che accetta questo parametro. Logicamente, secondo la documentazione, sarebbe stato files(). List ("q"). Sarebbe utile organizzarlo come la Guida API Android, ma per ogni esempio. So che non sarebbe efficiente, ma sarebbe davvero utile. –

+0

Ok, grazie, proveremo a migliorarlo. –

Problemi correlati