【发布时间】:2023-03-24 12:20:01
【问题描述】:
我有以下代码,列出了根目录下的文件,但没有列出根目录下的任何子文件夹:
NSString *parentId = @"root";
GTLQueryDrive *queryDrive = [GTLQueryDrive queryForFilesList];
queryDrive.q = [NSString stringWithFormat:@"'%@' in parents and trashed=false", parentId];
[self.driveService executeQuery:queryDrive completionHandler:^(GTLServiceTicket *ticket,GTLDriveFileList *files,NSError *error)
{
if (error == nil)
{
NSLog(@"Number of files: %i", [files.items count]);
NSLog(@"Have results");
// Iterate over files.items array
for(GTLDriveFile *file in files)
{
NSLog(@"File Title: %@ | ID: %@",file.title, file.identifier);
}
}
else
{
NSLog(@"An error occurred: %@", error);
}
}];
这列出了我在文件夹中的 7 个文件,但在这 7 个文件的同一级别,我有一个子文件夹。
例如:
根->file1 根->文件2 ...ETC 都回来了
但是 root->MyFolder 没有在结果集中列出。
有什么想法吗?
【问题讨论】:
-
好的,我找到了解决方案。我试图获取 id 的子文件夹是手动创建的。我尝试在代码中创建一个子文件夹,现在该子文件夹显示为 id。因此,通过在代码中创建文件夹,我能够做我需要做的事情。
-
对于现有子文件夹,您可以使用
parentID = 'root'为所有GTLDriveFiles 枚举mimeType = application/vnd.google-apps.folder- 为每个应用类型为...GTLQueryDrive *query = [GTLQueryDrive queryForChildrenListWithFolderId:file.identifier];的子查询,然后是[<GTLDriveService instance> executeQuery:query completionHandler:^(GTLServiceTicket *ticket, GTLDriveChildList *driveFolderChildren, NSError *error) {}]。跨度>
标签: ios google-drive-api