2013-06-20 101 views
5

其實我整合了google-drive-sdk與我的ios程序。我可以通過google-drive-sdk for iOS上傳谷歌驅動器上的指定文件。此外,我想提供一項功能,可以從用戶想要在Google雲端硬盤上上傳文件的可用文件夾中選擇文件夾。通過IOS Google Drive SDK的所有Google雲端硬盤文件夾列表

因此,我發現如何列出Google雲端硬盤的所有文件,但無法找到如何列出Google雲端硬盤的所有文件夾。

我也在Google開發者網站上瀏覽了整個API reference,但沒有找到任何有關它的解決方案。

我發現在某處使用下面的代碼文件夾列表可以做到這一點,但它沒有奏效。

GTLQueryDrive *query = [GTLQueryDrive queryForFilesList]; 
query.q = @"mimeType='application/vnd.google-apps.folder' and trashed=false"; 

[self.driveService executeQuery:query completionHandler:^(GTLServiceTicket *ticket, 
                  GTLDriveFileList *files, 
                  NSError *error) { 

    if (error == nil) { 
     NSLog(@"Array of folder: %@", files.items); 
    } else { 
     NSLog(@"An error occurred: %@", error); 
    } 
}]; 

那麼有沒有爲獲得使用谷歌驅動-SDK從谷歌雲端硬盤文件夾列表中的任何解決方案?

+0

嘿@cultor弄來這個解決方案。如果你得到請在這裏給出答案。我也面臨同樣的問題。我需要列出這些文件夾。 – sunil

回答

1

假設此代碼有效,查詢中存在問題。多個查詢應結合

query.q = @"mimeType='application/vnd.google-apps.folder' and trashed=false"; 

對於示例查詢更多示例,採取正式文件一看Search for Files

此外,如果此代碼不起作用,您希望使用Files.list()以上的查詢。檢查鏈接,並且您可能想要使用Object-c的示例代碼。

+0

您好,感謝您的快速回復。我嘗試添加「和」(@「mimeType ='application/vnd.google-apps.folder'和trashed = false」)。但仍然沒有奏效。關於這個鏈接https://developers.google.com/drive/v2/reference/files/list我已經通過它,但它只是列出所有文件而不是文件夾。 –

+0

你是否設法讓這個工作? –

1

您使用的示波器是什麼?請確保您使用的是

kGTLAuthScopeDrive = @「https://www.googleapis.com/auth/drive」;

例如:

NSString *scope = kGTLAuthScopeDrive; 

GTMOAuth2ViewControllerTouch *authViewController = 
[[GTMOAuth2ViewControllerTouch alloc] initWithScope:scope 
              clientID:kClientId 
             clientSecret:kClientSecret 
            keychainItemName:kKeychainItemName 
              delegate:self 
            finishedSelector:finishedSelector]; 

[self presentViewController:authViewController animated:YES completion:nil]; 
+1

我同意。您可能正在使用默認範圍kGTLAuthScopeDriveFile,它將只顯示您的應用程序創建的文件。 https://developers.google.com/drive/web/scopes – Ted

0

使用適當的範圍。

drive.file範圍有限,只允許它訪問它創建的文件或用戶使用它打開的文件。

整個驅動器範圍允許應用程序管理所有用戶的Drive文件。

強烈建議儘可能要求有限的範圍。有關所有可用範圍的詳細信息,請查看谷歌驅動器SDK文檔:

https://developers.google.com/drive/scopes

相關問題