如需在用户创建或打开文件时在 Google 云端硬盘中显示您的应用,您必须先设置云端硬盘界面 (UI) 集成。如需在 Google Workspace Marketplace 中列出您的应用,也需要进行配置。
启用 Drive API
在使用 Google API 之前,您必须在 Google Cloud 项目中启用这些 API。您可以在单个 Google Cloud 项目中启用一个或多个 API。
如需开始与 Google 云端硬盘界面集成,您必须启用 Drive API。这样您就可以使用 API 和界面集成功能。
在 Google Cloud 控制台中,启用 Google Drive API。
设置云端硬盘界面集成
- 在 Google API 控制台中,依次前往“菜单” > API 和服务 > 已启用的 API 和服务。
- 在“API 和服务”信息中心底部,点击 Google Drive API。系统会显示 Google Drive API 配置页面。
- 选择云端硬盘界面集成标签页。
- (可选)在应用名称字段中输入名称。应用名称会显示在云端硬盘设置中的“管理应用”标签页中。
- (可选)在简短说明字段中输入简短的一行说明。简短说明会显示在云端硬盘设置中的“管理应用”标签页中。
- (可选)在详细说明字段中输入完整说明。
上传一个或多个应用图标,以便在用户的已关联云端硬盘应用列表和“打开方式”上下文菜单中显示。图标应采用 PNG 格式,并具有透明背景。图标最长可能需要 24 小时才会显示在云端硬盘中。
如需使用云端硬盘界面的“打开方式”菜单项,请在打开网址字段中输入应用的网址。“打开方式”上下文菜单会使用此网址。
(可选)在默认 MIME 类型和默认文件扩展名字段中输入默认 MIME 类型和文件扩展名。默认 MIME 类型和文件扩展名表示您的应用专门用于打开的文件。例如,您的应用可能会打开一个内置格式,用于对图片进行分层和编辑。仅包含标准媒体类型,并确保没有拼写错误。如果您的应用仅打开快捷方式或第三方快捷方式文件,您可以将 MIME 类型留空。
(可选)在次要 MIME 类型和次要文件扩展名字段中输入次要 MIME 类型和文件扩展名。次要 MIME 类型和文件扩展名表示您的应用可以打开但并非专属于您应用的文件。例如,您的应用可能是可以打开 PNG 和 JPG 图片的图片编辑应用。仅包含标准媒体类型,并确保没有拼写错误。如果您的应用仅打开快捷方式或第三方快捷方式文件,则可以将 MIME 类型留空。
如需使用云端硬盘界面的“新建”按钮,并让用户使用您的应用创建文件,请勾选创建文件复选框。系统会显示新网址和可选的文档名称字段。
在新网址字段中输入网址。“新建”按钮会使用此网址将用户重定向到您的应用。
(可选)如果您希望应用打开 Google Workspace 支持的文件,请勾选导入复选框。
(可选)如果您的应用必须管理共享云端硬盘中的文件,请勾选共享云端硬盘支持复选框。如需详细了解如何在应用中支持共享云端硬盘,请参阅实现共享云端硬盘支持。
点击提交。
请求 drive.install 范围
如需允许应用在“打开方式”或“新建”菜单中显示为选项,请请求 https://www.googleapis.com/auth/drive.install 范围以与云端硬盘界面集成。请求此范围时,用户会收到如下所示的对话框:
如需详细了解您可以为云端硬盘应用请求的范围以及如何请求这些范围,请参阅 API 专属授权和身份验证信息。
state 参数
默认情况下,state 参数会附加到打开网址和新建网址,以便将数据从云端硬盘界面传递到您的应用。此参数包含一个 JSON 编码字符串,其中包含模板变量和有关对应用的请求的数据。包含的变量取决于所使用的网址类型(打开网址或新建网址):
| 模板变量 | 说明 | 网址应用 |
|---|---|---|
{ids} |
正在打开的文件 ID 的英文逗号分隔列表。 | 打开网址 |
{exportIds} |
要导出的文件 ID 的逗号分隔列表。仅在打开 Google Workspace 文件时使用。 | 打开网址 |
{resourceKeys} |
一个 JSON 字典,其中包含映射到其各自资源键的文件 ID。 | 打开网址 |
{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 方法中所述。
相关主题
安装式应用必须能够创建、管理和打开从云端硬盘界面启动的操作。如需了解详情,请参阅与云端硬盘界面的“新建”按钮集成或与云端硬盘界面的“打开方式”上下文菜单集成。