构建 Google 云端硬盘界面

Google Workspace 插件可以提供自定义 使用 Google 云端硬盘时的界面。这样,您就可以向用户提供 提供更多相关信息、自动执行任务,以及连接第三方 复制到 Google 云端硬盘

访问插件界面

您可以在以下位置打开 Google Workspace 插件: 如果 Google 云端硬盘的图标显示在 图标列。答 Google Workspace 插件可以 定义首页界面和/或项选择界面:

  • 如果用户在 Google 云端硬盘中点击插件图标 该插件会执行 相应的 drive.homepageTrigger 函数(如果存在)。此函数 构建并返回首页卡片 并显示在 Google 云端硬盘中如果拒绝 drive.homepageTrigger 函数,则会显示通用首页卡片。
  • 如果用户在 Google 云端硬盘中选择一项或多项内容,然后点击插件 图标或在插件打开时选择项目,该插件会执行 drive.onItemsSelectedTrigger 上下文函数(如果存在)。此函数用于构建插件的 Google 云端硬盘 上下文“已选择项目”界面 并将其返回给 Google 云端硬盘进行显示

构建云端硬盘插件界面

您可以按照以下通用命令,构建扩展 Google 云端硬盘的接口 步骤:

  1. 确定您是否希望插件为云端硬盘专用 首页。 还要确定是否要在用户 选择云端硬盘内容。
  2. 添加适当的 addOns.commonaddOns.drive 个字段以 插件脚本项目 清单,包括 所需的任何云端硬盘范围
  3. 如果您提供的是云端硬盘专用首页, 实施 drive.homepageTrigger 函数来构建此接口。您还可以选择使用 common.homepageTrigger 多个 Google Workspace 主机的专属界面。
  4. 如果您要提供云端硬盘内容相关项选择界面,则必须 实现 drive.onItemsSelectedTrigger 上下文触发器函数来构建此接口。 请参阅所选项目的云端硬盘上下文界面) 了解详情。
  5. 实现相关回调函数,以响应用户的 界面交互,例如按钮点击。

云端硬盘首页

Google 云端硬盘支持显示 Google Workspace 插件 首页。 要在 Google 云端硬盘中显示插件的通用首页,只需确保 是 addOns.drive 字段 。

或者,添加 drive.homepageTrigger 添加到插件清单中,以提供云端硬盘专用首页。

无论哪种情况,您都必须在 插件的脚本项目中。系统将自动调用此函数以构建 根据需要创建云端硬盘首页。您必须实现此函数才能构建和 返回单个 CardCard 组成主页的对象。系统会向首页触发器函数传递 事件对象 作为参数,其中包含一些常规信息,例如,客户端的 平台。您可以使用事件对象数据来定制 首页。

所选项目的云端硬盘上下文界面

Google 云端硬盘依靠内容相关触发器来确定 (如果有)在用户选择一项或多项 Google 云端硬盘内容时显示。当 触发器触发后,它会执行 drive.onItemsSelectedTrigger.runFunction 字段。

如需为云端硬盘创建上下文内容选择界面,您必须执行以下操作: 以下:

  1. 确保该插件的清单包含 https://www.googleapis.com/auth/drive.addons.metadata.readonly 范围

  2. 确保清单包含 drive.onItemsSelectedTrigger 部分。

  3. 实现 drive.onItemsSelectedTrigger 字段。 此函数接受事件对象作为参数 必须返回单个 Card 对象或 Card 对象。

  4. 与任何卡片一样,您必须实现用于提供 界面的 widget 交互性。例如,如果您在界面中添加一个按钮 它应该有一个附加的 操作 以及一个在用户点击按钮时运行的回调函数。

事件对象

创建并传递事件对象 发送至drive.homepageTriggerdrive.onItemsSelectedTrigger 触发函数。触发器函数可以使用 此事件对象中的信息来确定如何构建附加卡片 或以其他方式控制插件行为

有关事件对象的完整结构,请参见 事件对象。 如果云端硬盘是插件、上下文事件对象的代理托管应用 添加 云端硬盘事件对象 字段,其中包含云端硬盘专用的客户端信息。

内容选择触发器的云端硬盘上下文事件对象包含信息 触发器触发时与用户所选项目的相关。当用户 在云端硬盘中选择了多个项,则其中一项会被视为以下项之一: 主要利益;此项称为“活动光标项”

以下示例展示了 云端硬盘事件对象 传递给 drive.onItemsSelectedTrigger 函数:

    {
      "commonEventObject": { ... },
      "drive": {
        "activeCursorItem":{
          "addonHasFileScopePermission": true,
          "id":"0B_sX1fXRRU6Ac3RhcnRlcl9maWxl",
          "iconUrl": "https://drive-thirdparty.googleusercontent.com...",
          "mimeType":"application/pdf",
          "title":"How to get started with Drive"
        },
        "selectedItems": [
          {
            "addonHasFileScopePermission": true,
            "id":"0B_sX1fXRRU6Ac3RhcnRlcl9maWxl",
            "iconUrl":"https://drive-thirdparty.googleusercontent.com...",
            "mimeType":"application/pdf",
            "title":"How to get started with Drive"
          },
          ...
        ]
      },
      ...
    }