【发布时间】:2014-01-03 23:25:07
【问题描述】:
我正在使用这个code
将图像从我的 android 应用上传到用户的 google drive 帐户。
但是如何修改代码以将图像上传到名为“myFolder”的文件夹?
意味着该文件夹存在,如果不存在 - 创建这样的文件夹,然后将图像上传到那里。
【问题讨论】:
标签: java android google-drive-api
我正在使用这个code
将图像从我的 android 应用上传到用户的 google drive 帐户。
但是如何修改代码以将图像上传到名为“myFolder”的文件夹?
意味着该文件夹存在,如果不存在 - 创建这样的文件夹,然后将图像上传到那里。
【问题讨论】:
标签: java android google-drive-api
要将文件上传到特定文件夹,您需要将文件夹的 id 添加到文件父级(ref Docs for file.insert)。
所以你需要做的全部事情是:
代码
查找文件夹
在这里您可以选择两种方式:循环所有文件夹或搜索它。
更快更省资源的是按名称搜索文件夹;这样做很简单:
//Search by name and type folder
String qStr = "mimeType = 'application/vnd.google-apps.folder' and title = 'myFolder'";
//Get the list of Folders
FileList fList=service.files().list().setQ(qStr).execute();
//Check that the result is one folder
File folder;
if (fList.getItems().lenght==0){
folder=fList.getItems()[0];
}
更多关于可能的search parameters的信息。
创建插入请求如示例中所示
File file = service.files().insert(body, mediaContent);
在执行之前我们需要设置父级 file.setParents(Arrays.asList(new ParentReference().setId(folder.getFolderId())));
最后执行请求 文件.execute();
我还没有测试过代码,所以这里和那里可能有一些错字。
【讨论】: