11

クエリあり

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

ファイルとフォルダーのすべてをルートフォルダーに取得します。GTLDriveChildList確かに、返されたフォルダーを探すことができます。しかし、ルート フォルダーには何千ものアイテムが存在する可能性があり、そのうちの 1 つだけが必要です。絞り込み検索してみました。のコメントは、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'";

私は何を間違っていますか?

4

1 に答える 1

7

私は利己的な馬鹿です!

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ゴミ箱に入れられたアイテムを見つけたくない場合は重要です。

于 2013-04-01T22:10:32.353 に答える