如何浏览补充工具栏中的“与我共享”文件夹?

时间:2016-09-30 21:32:02

标签: google-apps-script

开发一个应用脚本,该脚本允许用户从侧边栏浏览Google云端硬盘中的文件夹和文件。

我们还希望允许用户在“与我共享”部分中查看文件夹和包含的文件,但到目前为止还无法了解如何为此提供便利。

云端硬盘服务页面 https://developers.google.com/apps-script/reference/drive/提到了许多方法,包括:

getFolders() - 获取用户云端硬盘中所有文件夹的集合。

但是,没有提到查看“与我共享”的文件夹和文件。我注意到一些应用程序也能够允许用户浏览这些文件(虽然我不能说我记得看到任何具有此功能的Google Apps-Scrips / Add-Ons)。

1 个答案:

答案 0 :(得分:4)

他们说"与我共享"实际上并不是一个文件夹而是一个过滤器(http://alicekeeler.com/2015/09/03/google-drive-shared-with-me-is-a-filter-not-a-folder/),因此在您的情况下可能会采用类似的方法:您只想显示其所有者与活动用户不同的文件和/或文件夹:

 function myFunction() {
  var userEmail = Session.getActiveUser().getEmail();
  var files = DriveApp.getFiles();
  while (files.hasNext()) {
    var fileOwnerEmail = files.next().getOwner().getEmail();
    if (fileOwnerEmail !== userEmail) {
      Logger.log(fileOwnerEmail);
    }
  }
}

UPD 找到了更好的方法:

function usingSearch() {
  var files = DriveApp.searchFiles(
    'sharedWithMe');
  while (files.hasNext()) {
    var file = files.next();
    Logger.log(file.getName() + file.getOwner().getEmail());
  }

}

https://developers.google.com/apps-script/reference/drive/drive-app#searchFiles(String)