我對v2 Google Drive SDK有點困惑。使用Google Drive SDK V2枚舉文件夾和文件
似乎有2種方法可以檢索有關文件和文件夾的信息。
使用files.list
我似乎並沒有能夠縮小我的搜索文件中的特定文件夾,但使用children.list
只返回非常基本的文件信息,如ID。沒有文件名。
它看起來像我必須檢索一個兒童列表,然後執行一個請求,爲每個孩子找出它的文件名,這似乎效率很低。
什麼是使用Google Drive枚舉文件夾及其內容的正常方法?
我對v2 Google Drive SDK有點困惑。使用Google Drive SDK V2枚舉文件夾和文件
似乎有2種方法可以檢索有關文件和文件夾的信息。
使用files.list
我似乎並沒有能夠縮小我的搜索文件中的特定文件夾,但使用children.list
只返回非常基本的文件信息,如ID。沒有文件名。
它看起來像我必須檢索一個兒童列表,然後執行一個請求,爲每個孩子找出它的文件名,這似乎效率很低。
什麼是使用Google Drive枚舉文件夾及其內容的正常方法?
替代做法返回元數據(至少文件名)是使用與files.list查詢表達式由父限制。
q='id-of-parent' in parents
這將爲您提供與子集合相同的結果,但會爲每個項目提供完整的元數據。
更新 -
這個現在可以用files.list
實現。您可以將q
參數與測試文件或文件夾的parents
的查詢一起傳遞。
q='MYFOLDERID' in parents
多個搜索參數和選項和示例在這裏:https://developers.google.com/drive/search-parameters
原來的答覆 -
是的,這是正確的。我們正在尋求改進這一功能,但不幸的是,你現在堅持這一點 - 抱歉。
如果您正在使所有的文件和文件夾更加愜意,更好的解決方案可能是獲取一個簡單的列表,並在文件中使用parents
數組來生成層次結構。
感謝。我現在將取消我的GDrive集成計劃,直到SDK更成熟。下載和緩存整個驅動器結構所需的帶寬是移動設備上的一個難題。如果您對此事有任何意見,請發佈一個輕量級(最小依賴性)的Android SDK,它允許我們將驅動器視爲文件系統。即列舉文件\文件夾,刪除,上傳,下載等。目前的SDK非常難以使用。我想替換掉Dropbox,但是他們的SDK現在更好,它可以讓我做我需要做的事情。 – Kuffs
如果你想在你的驅動器使用的所有文件夾:
FileList folders=service.files().list().setQ("mimeType='application/vnd.google-apps.folder'").execute();
for(File fl: folders.getItems()){
Log.v(TAG+" fOLDER name:",fl.getTitle());
}
謝謝。我會試試這個。 – Kuffs