在Google云端硬盘上创建文件夹(Android)

时间:2016-05-13 10:53:18

标签: android google-drive-android-api

我需要访问登录用户的Google云端硬盘存储空间。现在我可以获取他的名字和他的电子邮件,封面图片和阿凡达。我甚至可以要求访问驱动器存储。但我无法在Gdrive上设法创建文件/文件夹。

开发者页面给我这个代码来创建文件夹: https://developers.google.com/drive/v3/web/folder

File fileMetadata = new File();
fileMetadata.setName("Invoices");
fileMetadata.setMimeType("application/vnd.google-apps.folder");

File file = driveService.files().create(fileMetadata)
    .setFields("id")
    .execute();
System.out.println("Folder ID: " + file.getId());

但我相信它不会那么容易。

fileMetadata.setName

无法为我解决。我确信我错过了一些东西。

这是我在加载GoogleApiClient时所做的事情

mGoogleApiClient = new GoogleApiClient.Builder(getActivity())
            .addApi(Drive.API)
            .addScope(Drive.SCOPE_FILE)
            .addConnectionCallbacks(this)
            .addOnConnectionFailedListener(this).addApi(Plus.API, Plus.PlusOptions.builder().build())
            .addScope(Plus.SCOPE_PLUS_LOGIN)
            .build();

我不想使用隐藏的应用文件夹,相反,我希望该用户看到应用文件夹,并且可以轻松查看其中的内容。我有一个按钮,当用户点击它时,本地保存的特定文件应该上传到驱动器。稍后我会添加自动同步,但现在手动上传就足以理解了。感谢!!!

欢迎任何帮助。

1 个答案:

答案 0 :(得分:3)

Drive API for Android中,请注意与Google云端硬盘API相比,使用文件夹略有不同。适用于Android的Drive API中的文件夹是metadataDriveId内的专用资源,要创建文件夹,请为根文件夹调用DriveFolder.createFolder。然后,传递包含标题和其他属性的元数据以设置文件夹的值。

有关完整的工作示例,请参阅CreateFolderActivity中的Google Drive Android API Demos app示例。