【问题标题】:How do I query Google Drive for id of a folder with known name in root folder (Google Drive SDK for iPhone)?如何在 Google Drive 中查询根文件夹中已知名称的文件夹的 ID(Google Drive SDK for iPhone)?
【发布时间】:2013-04-01 19:39:07
【问题描述】:

有查询

GTLQueryDrive *queryFilesList = [GTLQueryDrive queryForChildrenListWithFolderId:@"root"];

我在根文件夹中获取所有内容:文件和文件夹。当然,我可以在返回的GTLDriveChildList 中查找文件夹。但是根文件夹可以有数千个项目,我只需要其中一个。我尝试了窄搜索。 GTLQueryDrive.h 中的评论说这是可能的。我试过

queryFilesList.q = @"mimeType='application/vnd.google-apps.folder'";

仅查询文件夹或

queryFilesList.q = [NSString stringWithFormat:@"title='%@'", folderName];

按名称查询所有项目。两个查询都返回空列表。 仔细检查:我寻找的文件夹确实存在。

我试过了

GTLQueryDrive *queryFilesList = [GTLQueryDrive queryForFilesList];

它适用于

queryFilesList.q =  @"mimeType='audio/x-aiff'";

但如果我尝试只查询文件夹,则返回空列表

queryFilesList.q =  @"mimeType='application/vnd.google-apps.folder'";

我做错了什么?

【问题讨论】:

    标签: ios objective-c google-drive-api


    【解决方案1】:

    我是自私的白痴!

    GTLQueryDrive *queryFilesList = [GTLQueryDrive queryForChildrenListWithFolderId:@"root"];
    queryFilesList.q = @"mimeType='application/vnd.google-apps.folder'";
    

    工作正常,但它只能看到使用此应用创建的文件夹!那是我的问题。确切地说,您可以使用以下查询:

    queryFilesList.q = @"mimeType='application/vnd.google-apps.folder' and 'root' in parents and trashed=false";
    

    trashed=false 很重要,如果您不想找到已丢弃的物品。

    【讨论】:

    • 你是如何让它显示所有文件的,而不仅仅是当前应用创建的文件?
    • 啊,应用需要使用 kGTLAuthScopeDrive 而不是 kGTLAuthScopeDriveFile。
    • @pstoppani,你在哪里调整这个常数?在授权期间,我没有在任何地方使用其中任何一个。你能在你的答案中添加一个看起来非常重要的细节吗?
    • @tarabyte Swift 版本如下: private func createAuthController() -> GTMOAuth2ViewControllerTouch { return GTMOAuth2ViewControllerTouch( scope: kGTLAuthScopeDriveFile, clientID: Constants.kClientID, clientSecret: nil, keychainItemName: Constants.kKeychainItemName, delegate: self, finishedSelector: #selector(ViewController.viewController(_:finishedWithAuth:error:)) }
    猜你喜欢
    • 2013-07-13
    • 1970-01-01
    • 2023-03-24
    • 1970-01-01
    • 1970-01-01
    • 2020-07-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多