設定雲端硬碟 UI 整合

如要在使用者建立或開啟檔案時,在 Google 雲端硬碟中顯示應用程式,您必須先設定雲端硬碟使用者介面 (UI) 整合功能。您還需要進行設定,才能在 Google Workspace Marketplace 中列出您的應用程式。

啟用 Drive API

使用 Google API 前,您必須在 Google Cloud 專案中啟用 API。您可以在單一 Google Cloud 專案中啟用一或多個 API。

如要開始與 Google 雲端硬碟 UI 整合,您必須啟用 Drive API。這可讓您存取 API 和 UI 整合功能。

  • 在 Google Cloud 控制台中,啟用 Google Drive API。

    啟用 API

設定雲端硬碟 UI 整合功能

  1. 在 Google API 控制台中,依序點選「選單」圖示 >「API 和服務」>「已啟用的 API 和服務」

    前往「已啟用的 API 和服務」

  2. 在「API 和服務」資訊主頁底部,按一下「Google Drive API」。系統隨即會顯示 Google Drive API 設定頁面。
  3. 選取「雲端硬碟 UI 整合」分頁標籤。
  4. (選用) 在「Application name」欄位中輸入名稱。應用程式名稱會顯示在使用者雲端硬碟設定的「管理應用程式」分頁中。
  5. (選用) 在「Short description」欄位中輸入簡短且一行的說明。使用者會在雲端硬碟設定的「管理應用程式」分頁中看到簡短說明。
  6. (選用) 在「詳細說明」欄位中輸入完整說明。
  7. 上傳一或多個應用程式圖示,以顯示在使用者的已連結雲端硬碟應用程式清單和「選擇開啟工具」內容選單中。圖示應採用背景透明的 PNG 格式,圖示最多可能需要 24 小時才會顯示在雲端硬碟中。

  8. 如要使用雲端硬碟 UI 的「開啟方式」選單項目,請在「Open URL」欄位中輸入應用程式的網址。「選擇開啟工具」內容選單會使用這個網址。

    • 這個網址必須包含完整的網域名稱;localhost 無效。
    • 應用程式的目標使用者應可存取這個網址。如果您有多個應用程式版本 (例如用於公開版本的一個版本,另一個則用於受限版本),請為每個版本使用不重複的網址。然後為各個版本建立不同的應用程式設定。
    • 您必須先驗證這個網址的擁有權,才能在 Google Workspace Marketplace 中發布應用程式。
    • 根據預設,系統會將 state 查詢參數附加至這個網址,以將資料從雲端硬碟 UI 傳送至應用程式。如需 state 參數內容的相關資訊,請參閱 state 參數
  9. (選用) 在「預設 MIME 類型」和「預設副檔名」欄位中輸入預設的 MIME 類型和副檔名。預設的 MIME 類型和副檔名代表應用程式專門用來開啟的檔案。舉例來說,您的應用程式可以開啟內建格式來分層和編輯圖片。只加入標準的媒體類型,並確認沒有任何錯字和錯別字。如果您的應用程式只會開啟捷徑或第三方捷徑檔案,可以將 MIME 類型留空。

  10. (選用) 在「次要 MIME 類型」和「次要副檔名」欄位中輸入次要 MIME 類型和副檔名。次要 MIME 類型和副檔名代表應用程式可開啟的檔案,但不僅限於您的應用程式。舉例來說,您的應用程式可能是開啟 PNG 和 JPG 圖片的圖片編輯應用程式。只加入標準的媒體類型,並確認沒有任何錯字和錯別字。如果您的應用程式只會開啟捷徑或第三方捷徑檔案,可以將 MIME 類型留空。

  11. 如要使用雲端硬碟 UI 的「新增」按鈕,並讓使用者透過您的應用程式建立檔案,請勾選「建立檔案」方塊。系統隨即會顯示「New URL」(新網址) 和選用的「Document name」(文件名稱) 欄位。

    • 這個網址必須包含完整的網域名稱;localhost 無效。
    • 您必須先驗證這個網址的擁有權,才能在 Google Workspace Marketplace 中發布應用程式。
    • 根據預設,系統會將 state 查詢參數附加至這個網址,以將資料從雲端硬碟 UI 傳送至應用程式。如需 state 參數內容的相關資訊,請參閱 state 參數
  12. 在「新網址」欄位中輸入網址。「新增」按鈕會使用這個網址,將使用者重新導向至應用程式。

  13. (選用) 如要讓應用程式開啟 Google Workspace 支援的檔案,請勾選「匯入」方塊。

  14. (選用) 如果應用程式必須管理共用雲端硬碟中的檔案,請勾選「共用雲端硬碟支援」方塊。如要進一步瞭解如何在應用程式中支援共用雲端硬碟,請參閱「實作共用雲端硬碟支援功能」。

  15. 點選「提交」

要求 drive.install 範圍

如要讓應用程式顯示為「選擇開啟工具」或「新增」選單中的選項,請要求 https://www.googleapis.com/auth/drive.install 範圍與雲端硬碟 UI 整合。要求這個範圍時,使用者會收到類似以下的對話方塊:

Google 雲端硬碟使用者介面的安裝對話方塊。
圖 1. 使用雲端硬碟 UI 範圍時的安裝對話方塊。

如要進一步瞭解雲端硬碟應用程式可要求的範圍及如何要求,請參閱 API 專屬授權和驗證資訊

state 參數

根據預設,開啟網址和新網址會同時附加 state 參數,以便從雲端硬碟 UI 將資料傳送至應用程式。這個參數包含 JSON 編碼字串,內含範本變數以及與應用程式要求相關的資料。包含的變數取決於所用網址類型 (開啟網址或新網址):

範本變數 說明 網址套用
{ids} 開啟的檔案 ID 清單 (以半形逗號分隔)。 開啟網址
{exportIds} 以半形逗號分隔的檔案 ID 清單 (僅在開啟內建 Google 文件時使用)。 開啟網址
{resourceKeys} 檔案 ID 與其各自資源金鑰對應的 JSON 字典。 開啟網址
{folderId} 上層資料夾的 ID。 新增網址
{folderResourceKey} 上層資料夾的資源金鑰。 新增網址
{userId} 用來識別使用者的設定檔 ID。 開啟網址和新網址
{action} 要執行的動作。使用開啟網址時,此值為 open,使用新網址時則為 create 開啟網址和新網址

state 參數經過網址編碼,因此應用程式必須處理逸出字元並將其剖析為 JSON。應用程式可以偵測 state 參數中的 create 值,驗證建立檔案的要求。

新網址的狀態資訊範例 (採用 JSON 格式)

新網址的 state 資訊如下:

{
  "action":"create",
  "folderId":"FOLDER_ID",
  "folderResourceKey":"FOLDER_RESOURCE_KEY",
  "userId":"USER_ID"
}

「開啟網址」的 JSON 狀態資訊範例

公開網址的 state 資訊如下:

{
  "ids": ["ID"],
  "resourceKeys":{"RESOURCE_KEYS":"RESOURCE_KEYS"},
  "action":"open",
  "userId":"USER_ID"
}

ID 和資源索引鍵可用來擷取檔案中繼資料及下載檔案內容。應用程式取得檔案 ID 和存取權杖後,即可檢查權限、擷取檔案中繼資料,以及下載檔案內容 (如 files.get 方法所述)。

已安裝的應用程式必須能夠建立、管理及開啟從雲端硬碟 UI 啟動的動作。詳情請參閱「與雲端硬碟 UI 的「新增」按鈕整合」或「與雲端硬碟使用者介面的「選擇開啟工具」內容選單整合」。