当前位置: 首页 > 知识库问答 >
问题:

Google Drive Android API-检查文件夹是否存在

李光华
2023-03-14

我想知道如何使用新的Google Drive Android API检查Google Drive中是否存在文件夹

我试过下面的操作,以为如果找不到文件夹,它要么崩溃,要么返回null,但它没有这样做(只要它是有效的DriveId,即使文件夹已被删除)。

DriveFolder folder = Drive.DriveApi.getFolder(getGoogleApiClient(), driveId));

如果我尝试创建一个文件,我从上面的代码得到的文件夹,它也不会崩溃?显然,我很难理解这个新的API是如何协同工作的,特别是在非常有限的教程和问题的情况下,我真的被困在这个问题上,所以任何输入都将非常感谢。

只是为了澄清我的问题:我正在一个指定的Google Drive文件夹中创建一个文件,但如果该文件夹不存在(已被用户删除),我想先创建它。

共有1个答案

钦楚青
2023-03-14

经过大量的研究,这是我最终得到的代码。它工作正常,但有一个问题:当一个文件夹在Google Drive中被丢弃时,在我可以从应用程序获取的元数据更新之前需要一些时间(几个小时),这意味着这段代码可以在丢弃事件实际发生的几个小时之后首先检测到文件夹是否被丢弃-更多信息和讨论可以在这里找到。

public class checkFolderActivity extends BaseDemoActivity {

    @Override
    public void onConnected(Bundle connectionHint) {
        super.onConnected(connectionHint);

        DriveId folderId = DriveId.decodeFromString(folderId);
        DriveFolder folder = Drive.DriveApi.getFolder(mGoogleApiClient, folderId);
        folder.getMetadata(mGoogleApiClient).setResultCallback(metadataRetrievedCallback);

    }

     final private ResultCallback<DriveResource.MetadataResult> metadataRetrievedCallback = new
        ResultCallback<DriveResource.MetadataResult>() {
            @Override
            public void onResult(DriveResource.MetadataResult result) {
                if (!result.getStatus().isSuccess()) {
                    Log.v(TAG, "Problem while trying to fetch metadata.");
                    return;
                }

                Metadata metadata = result.getMetadata();
                if(metadata.isTrashed()){
                    Log.v(TAG, "Folder is trashed");
                }else{
                    Log.v(TAG, "Folder is not trashed"); 
                }

            }
        };
}
 类似资料:
  • 问题内容: 我正在使用Java 7 IO的新功能,实际上我试图接收文件夹的所有xml文件。但这在文件夹不存在时引发异常,如何检查新IO是否存在该文件夹? 问题答案: 使用: 您可以选择传递此方法的值: 还有一种方法:

  • 问题内容: 尝试检查我要读取的文件是否存在。 问题答案: 这是另一种方法: 包装的用途和功能: p_DirName in varchar2, – schema object name p_FileName in varchar2 ) return number is l_file_loc bfile; begin l_file_loc := bfilename(upper(p_DirName),

  • 问题内容: 如何检查 文件 的存在? 在模块的文档中,有方法的说明。但是,据我了解,它只检查目录的存在。而且我需要检查 文件 ! 如何才能做到这一点? 问题答案: 为什么不尝试打开文件? 无论如何,经过一分钟的搜索,请尝试以下操作: 对于Node.js v0.12.x及更高版本 双方并已弃用 *编辑: 已更改: 至: 林特抱怨双重等于不是三次等于。 使用fs.stat:

  • 如果文档ID不存在,我想将数据添加到firestore数据库中。到目前为止,我一直在尝试: 目标是检查数据库中的所有文档ID,并查看与“varuId”变量的任何匹配。如果匹配,则不会创建文档。如果不匹配,它应该创建一个新文档

  • rank ▲ ✰ vote url 17 776 241 907 url 检查一个文件夹是否存在,如果不存在就创建它 有什么好的方法吗?这个是我想的: filename = "/my/directory/filename.txt" dir = os.path.dirname(filename) try: os.stat(dir) except: os.mkdir(dir) f

  • 问题内容: 如果没有文件夹,我可以检查是否存在作业: http:// myJenkinsInstance:8080 / checkJobName?value = TestJob101 我无法解决的是当我使用文件夹插件时,如何检查文件夹中的作业。 例如 http:// myJenkinsInstance:8080 / job / MyFolder / job / TestJob101 / http: