2012-10-10 7 views
6

La mia applicazione funziona con l'API Java di Google Drive.Crea cartella se non esiste in Google Drive

Desidero creare una cartella nella radice di Google Drive solo se non esiste. Sto usando sotto il codice per creare la cartella.

file = service.files().insert(body).execute(); 

Come controllo l'esistenza della cartella nella cartella principale. Ho solo il nome della cartella "Myapp", non l'ID di istanza.

risposta

9
Files.List request = service.files().list().setQ(
     "mimeType='application/vnd.google-apps.folder' and trashed=false"); 
FileList files = request.execute(); 

Ora è possibile scorrere tutte le cartelle in "file" e verificare se una delle cartelle ha il titolo cercato.

Non dimenticare di scorrere tutte le pagine con:

request.setPageToken(files.getNextPageToken()); 

Edit:

forse si potrebbe dare un'occhiata a this site. Puoi invece aggiungere il titolo nei tuoi criteri di ricerca in modo da non dover recuperare tutte le cartelle.

+4

che funzionerà, ma penso che una query di "mimeType = 'application/vnd.google-apps.folder' e cestinato = false e title = 'MyApp' e 'root' nei genitori" restituirà la cartella che sta cercando o una lista vuota, quindi non è necessario ripetere iterate con nextPageToken – pinoyyid

+0

@pinoyyid Esattamente. Questo è ciò che intendevo nella modifica della mia prima risposta. – iixi