建構 Google 雲端硬碟介面

Google Workspace 外掛程式可在使用者使用 Google 雲端硬碟時提供自訂介面。這樣一來,您就能為使用者提供其他相關資訊、自動執行工作,以及將第三方系統連結至 Google 雲端硬碟。

存取外掛程式 UI

如果 Google 雲端硬碟使用者介面右側的圖示欄中顯示 Google Workspace 外掛程式的圖示,您就可以在 Google 雲端硬碟中開啟該外掛程式。Google Workspace 外掛程式可以定義首頁介面和/或項目選取介面:

  • 如果使用者在 Google 雲端硬碟中點選外掛程式圖示,外掛程式會執行對應的 drive.homepageTrigger 函式 (如有)。這個函式會建立並傳回首頁資訊卡,供 Google 雲端硬碟顯示。如果未定義 drive.homepageTrigger 函式,系統會改為顯示一般首頁資訊卡。
  • 如果使用者在 Google 雲端硬碟中選取一或多個項目,然後點選外掛程式圖示,或是在外掛程式開啟時選取項目,外掛程式就會執行對應的 drive.onItemsSelectedTrigger 關聯操作函式 (如有)。這個函式會建構外掛程式的 Google 雲端硬碟內容「所選項目」介面,並將其傳回至 Google 雲端硬碟進行顯示。

建構雲端硬碟外掛程式介面

您可以按照下列一般步驟,建構可擴充 Google 雲端硬碟的介面:

  1. 決定是否要為外掛程式提供 Drive 專用的首頁。另外,請決定是否要在使用者選取雲端硬碟項目時提供關聯介面。
  2. 將適當的 addOns.commonaddOns.drive 欄位新增至外掛程式指令碼專案資訊清單,包括所需的任何 Drive 範圍
  3. 如果您提供 Drive 專屬首頁,請實作 drive.homepageTrigger 函式來建構這個介面。您也可以選擇使用 common.homepageTrigger 介面,讓多個 Google Workspace 主機都能使用。
  4. 如果您提供 Drive 內容項目選取介面,則必須實作 drive.onItemsSelectedTrigger 內容觸發條件函式,才能建構這個介面。詳情請參閱「選取項目的 Google 雲端硬碟內容相關介面」。
  5. 實作回應使用者 UI 互動 (例如按鈕點擊) 所需的相關回呼函式。

雲端硬碟首頁

Google 雲端硬碟支援顯示 Google Workspace 外掛程式首頁。如要在 Google 雲端硬碟中顯示外掛程式的通用首頁,只要確認外掛程式的資訊清單中含有 addOns.drive 欄位即可。

或者,您也可以在外掛程式資訊清單中新增 drive.homepageTrigger,提供 Drive 專屬的首頁。

無論是哪種情況,您都必須在外掛程式指令碼專案中提供首頁觸發事件函式的名稱。這個函式會在需要時自動呼叫,以便建構 Google 雲端硬碟首頁。您必須實作這個函式,才能建構並傳回單一 CardCard 物件的陣列,這些物件會組成首頁。這個首頁觸發事件函式會將事件物件傳遞為參數,其中包含一些一般資訊,例如用戶端的平台。您可以使用事件物件資料,自訂首頁的結構。

為所選項目提供 Drive 內容相關介面

Google 雲端硬碟會使用內容觸發事件,決定在使用者選取一或多個 Google 雲端硬碟項目時,要顯示哪個介面 (如果有)。觸發事件觸發時,會執行外掛程式資訊清單drive.onItemsSelectedTrigger.runFunction 欄位指定的內容相關觸發事件函式。

如要為 Drive 建立內容相關項目選取介面,您必須執行下列操作:

  1. 確認外掛程式的資訊清單包含 https://www.googleapis.com/auth/drive.addons.metadata.readonly scope

  2. 確認資訊清單含有 drive.onItemsSelectedTrigger 區段。

  3. 實作 drive.onItemsSelectedTrigger 欄位中所述函式。這個函式會接受事件物件做為引數,且必須傳回單一 Card 物件或 Card 物件的陣列。

  4. 如同任何資訊卡,您必須實作任何回呼函式,用於為介面提供小工具互動功能。舉例來說,如果您在介面中加入按鈕,該按鈕應附加 Action,並實作回呼函式,以便在按下按鈕時執行。

事件物件

在呼叫這些函式時,系統會建立 事件物件,並將其傳遞至 drive.homepageTriggerdrive.onItemsSelectedTrigger 觸發函式。觸發事件函式可使用這個事件物件中的資訊,判斷如何建構外掛程式資訊卡,或以其他方式控制外掛程式行為。

如要瞭解事件物件的完整結構,請參閱「事件物件」。如果雲端硬碟是外掛程式的代理主機應用程式,則內容事件物件會包含攜帶雲端硬碟專屬用戶端資訊的 雲端硬碟事件物件欄位。

項目選取觸發事件的內容相關 Drive 事件物件,包含使用者選取項目時觸發事件的相關資訊。當使用者在 Google 雲端硬碟中選取多個項目時,系統會將其中一個項目視為主要項目;這個項目稱為活動游標項目

以下範例顯示傳遞至 drive.onItemsSelectedTrigger 函式的 Drive 事件物件

    {
      "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"
          },
          ...
        ]
      },
      ...
    }