【问题标题】:how to upload an image from my android app to a specific folder on google drive如何将图像从我的 android 应用程序上传到谷歌驱动器上的特定文件夹
【发布时间】:2014-01-03 23:25:07
【问题描述】:

我正在使用这个code

将图像从我的 android 应用上传到用户的 google drive 帐户。

但是如何修改代码以将图像上传到名为“myFolder”的文件夹?

意味着该文件夹存在,如果不存在 - 创建这样的文件夹,然后将图像上传到那里。

【问题讨论】:

    标签: java android google-drive-api


    【解决方案1】:

    要将文件上传到特定文件夹,您需要将文件夹的 id 添加到文件父级(ref Docs for file.insert)。

    所以你需要做的全部事情是:

    1. 在驱动器中找到文件夹
    2. 创建插入请求
    3. 将父ID添加到文件插入
    4. 执行插入请求

    代码

    查找文件夹

    在这里您可以选择两种方式:循环所有文件夹或搜索它。

    更快更省资源的是按名称搜索文件夹;这样做很简单:

    //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();

    我还没有测试过代码,所以这里和那里可能有一些错字。

    【讨论】:

    • 超级。我会尽力。你是从哪里弄来的这个?如果不存在,如何创建文件夹?
    • 我从文档中推断出代码(参考答案,另一个有用的链接是 Drive Mimetypes developers.google.com/drive/mime-types 的链接)。要创建文件夹,您必须使用 mimeType = 'application/vnd.google-apps.folder' 创建一个新文件,并使用文件夹名称的标题
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-10
    • 1970-01-01
    • 2019-01-23
    • 1970-01-01
    相关资源
    最近更新 更多