如何在Android App中创建上传文件到Google云端硬盘

时间:2012-09-13 08:40:07

标签: android google-drive-api

我已将功能上传文件实施到Google云端硬盘。我的应用程序(Android App)有两页。

设置页面:我们配置了Google帐户。登录谷歌帐户后。我们授予权限并将OAUTH_TOKEN和OAUTH_TOKEN_SECRET保存到 SharedPreferences

上传页面:我们从资源管理器中选择文件。然后点击[上传]按钮向他们发送Google云端硬盘。

我发现developers.google.com上的示例代码显示了如何上传文件。它看起来像这样


/**
   * Insert new file.
   *
   * @param service Drive API service instance.
   * @param title Title of the file to insert, including the extension.
   * @param description Description of the file to insert.
   * @param parentId Optional parent folder's ID.
   * @param mimeType MIME type of the file to insert.
   * @param filename Filename of the file to insert.
   * @return Inserted file metadata if successful, {@code null} otherwise.
   */
  private static File insertFile(Drive service, String title, String description,
      String parentId, String mimeType, String filename) {
    // File's metadata.
    File body = new File();
    body.setTitle(title);
    body.setDescription(description);
    body.setMimeType(mimeType);

    // Set the parent folder.
    if (parentId != null && parentId.length() > 0) {
      body.setParents(
          Arrays.asList(new File.ParentReference().setId(parentId));
    }

    // File's content.
    java.io.File fileContent = new java.io.File(filename);
    FileContent mediaContent = new FileContent(mimeType, fileContent);
    try {
      File file = service.files().insert(body, mediaContent).execute();

      // Uncomment the following line to print the File ID.
      // System.out.println("File ID: %s" + file.getId());

      return file;
    } catch (IOException e) {
      System.out.println("An error occured: " + e);
      return null;
    }
  }

所以我们只需调用上面的函数来上传文件。但我不知道如何初始化 驱动(com.google.api.services.drive.Drive)以传递给该功能。

使用OAUTH_TOKEN和OAUTH_TOKEN_SECRET初始化驱动变量需要做些什么?

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

Google Drive SDK文档中的OAuth 2.0页面介绍了如何检索有效凭据并使用它们来实例化服务对象:

https://developers.google.com/drive/credentials