No se puede crear un archivo dentro de una carpeta pública en Google Drive

Seguimos las demostraciones Api de Google Drive. Aquí no soy capaz de crear un archivo dentro de la carpeta pública

package com.google.android.gms.drive.sample.demo; import android.os.Bundle; import com.google.android.gms.common.api.ResultCallback; import com.google.android.gms.drive.Drive; import com.google.android.gms.drive.DriveApi.ContentsResult; import com.google.android.gms.drive.DriveApi.DriveIdResult; import com.google.android.gms.drive.DriveFolder; import com.google.android.gms.drive.DriveFolder.DriveFileResult; import com.google.android.gms.drive.DriveId; import com.google.android.gms.drive.MetadataChangeSet; import java.lang.Override; /** * An activity to create a file inside a folder. */ public class CreateFileInFolderActivity extends BaseDemoActivity { private DriveId mFolderDriveId; @Override public void onConnected(Bundle connectionHint) { super.onConnected(connectionHint); Drive.DriveApi.fetchDriveId(getGoogleApiClient(), EXISTING_FOLDER_ID) .setResultCallback(idCallback); } final private ResultCallback<DriveIdResult> idCallback = new ResultCallback<DriveIdResult>() { @Override public void onResult(DriveIdResult result) { if (!result.getStatus().isSuccess()) { showMessage("Cannot find DriveId. Are you authorized to view this file?"); return; } mFolderDriveId = result.getDriveId(); Drive.DriveApi.newContents(getGoogleApiClient()) .setResultCallback(contentsResult); } }; final private ResultCallback<ContentsResult> contentsResult = new ResultCallback<ContentsResult>() { @Override public void onResult(ContentsResult result) { if (!result.getStatus().isSuccess()) { showMessage("Error while trying to create new file contents"); return; } DriveFolder folder = Drive.DriveApi.getFolder(getGoogleApiClient(), mFolderDriveId); MetadataChangeSet changeSet = new MetadataChangeSet.Builder() .setTitle("Sujatha.txt") .setMimeType("text/plain") .setStarred(true).build(); folder.createFile(getGoogleApiClient(), changeSet, result.getContents()) .setResultCallback(fileCallback); } }; final private ResultCallback<DriveFileResult> fileCallback = new ResultCallback<DriveFileResult>() { @Override public void onResult(DriveFileResult result) { if (!result.getStatus().isSuccess()) { showMessage("Error while trying to create the file"); return; } showMessage("Created a file: " + result.getDriveFile().getDriveId()); } }; 

}

mi carpeta pública es esta y también
EXISTING_FOLDER_ID = "0B2uTE9KZI1PTRXEwQ00xRkt0Wk0"

todavía no puedo crear un archivo de texto en esta carpeta. Está mostrando este mensaje Cannot find DriveId. Are you authorized to view this file? Cannot find DriveId. Are you authorized to view this file? Hice la carpeta pública y su conjunto a puede editar en opciones de acciones.

Cualquier sugerencia será apreciada.

Gracias por adelantado

EDITAR 1

  1. Soy capaz de crear archivos y carpetas en mi unidad de google. Pero no a una carpeta específica que mencioné anteriormente.

Cree un archivo desde su final y carguelo en la carpeta GDrive

 private void saveFileToDrive(final String name) { Thread t = new Thread(new Runnable() { @Override public void run() { try { FileContent mediaContent = new FileContent("plain/text", yourfilename); com.google.api.services.drive.model.File body = new com.google.api.services.drive.model.File(); body.setTitle(name); body.setMimeType("plain/text"); com.google.api.services.drive.model.File file = servicer.files().insert(body, mediaContent).execute(); if (file != null) { runOnUiThread(new Runnable() { @Override public void run() { Toast toast = Toast.makeText(getApplicationContext(), "File exported successfully", 2000).toast.show(); } } ); } } catch (UserRecoverableAuthIOException e) { startActivityForResult(e.getIntent(), REQUEST_AUTHORIZATION); } catch (IOException e) { e.printStackTrace(); } } }); t.start(); } 

A tu aplicación no se le da acceso a esa carpeta, a menos que el usuario de tu aplicación seleccione esa carpeta desde tu aplicación. Lea más aquí: https://stackoverflow.com/a/25881227/1363471

  • Cómo seleccionar los archivos de la unidad de google en android?
  • SDK de Google Drive: carga de imagen, reconocimiento óptico de caracteres, resultado de la descarga
  • Abrir y guardar archivos de Android en / desde el SDK de Google Drive
  • Selector de Google Drive (JavaScript) no móvil
  • Cómo perder contenido de archivos en Google Drive
  • Google Drive GET_CONTENT archivo de lectura de intenciones
  • Google Drive + ACTION_GET_CONTENT
  • No se puede descargar el archivo creado por mi aplicación en Google Drive, pero puede obtener los metadatos de ese archivo
  • Creación de una carpeta dentro de una carpeta en google drive android
  • Android Google Play / Drive Api
  • Cómo utilizar GoogleAuthorizationCodeFlow con AccessType está fuera de línea
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.