2017-01-14 113 views
1

在這裏,我要上傳的谷歌驅動的應用程序文件夾中的多個文件:將多個文件上傳到Google Drive?

@Override 
protected Boolean doInBackground(DriveFile...params) { 

    Drive.DriveApi.requestSync(mGoogleApiClient).await(); 

    DriveFile file = params[0]; 
    try { 
     DriveApi.DriveContentsResult driveContentsResult = file.open(
      mGoogleApiClient, DriveFile.MODE_WRITE_ONLY, null).await(); 
     if (!driveContentsResult.getStatus().isSuccess()) { 
      return false; 
     } 
     DriveContents driveContents = driveContentsResult.getDriveContents(); 

     FileInputStream fileInputStream = null; 
     try { 

      fileInputStream = new FileInputStream(DbHelper.databasePath); 
     } catch (FileNotFoundException e) { 
      e.printStackTrace(); 
     } 
     BufferedInputStream bufferedInputStream = new BufferedInputStream(fileInputStream); 

     BufferedOutputStream bufferedOutputStream = new BufferedOutputStream(driveContents.getOutputStream()); 

     /*reading and writing data to and from file*/ 
     int n = 0; 
     byte[] data = new byte[8 * 1024]; 
     try { 
      while ((n = bufferedInputStream.read(data)) > 0) { 

       bufferedOutputStream.write(data, 0, n); 
      } 

      bufferedOutputStream.flush(); 
      bufferedOutputStream.close(); 

     } catch (Exception e) { 
      e.printStackTrace(); 
     } 


     com.google.android.gms.common.api.Status status = 
      driveContents.commit(mGoogleApiClient, null).await(); 
     return status.getStatus().isSuccess(); 
    } 
    return false; 
} 

在嘗試上傳兩個文件doInBackground方法被調用只有一次,只有一個文件被上傳這是最後一次在文件中的一個ArrayList 。

+1

請問您是否可以編輯您的帖子以澄清您的問題? –

回答

0

您需要發佈調用doInBackground的完整代碼。問題在於那部分代碼。

backupBtn.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View view) { 

      createFolderOnGoogleDrive(); 
      multipleFilesArrayList = listFilePath(); 
      createFileAsyncTask = new CreateFileAsyncTask(); 
      multipleFilestoAsynchTask = multipleFilesArrayList.get(i); 
      createFileAsyncTask.execute(multipleFilesArrayList); 

     });   } 
相關問題