升级已发布的插件

。如需了解详情,请参阅我可以升级我的编辑器插件吗?

如果您已构建并发布用于扩展 Gmail 或 Google 日历的插件,则可以将该插件升级到 Google Workspace 插件。本页面中的说明详细介绍了如何将 Google Workspace 功能添加到现有的 Gmail 或 Google 日历插件中,然后发布升级后的插件,以供用户发现和安装。

您可以将新功能转移到原始插件中,以保留您在 Google Workspace Marketplace 中的产品详情、安装次数和用户。升级后,您还可以充分利用首页等新的 Google Workspace 插件功能。

第 1 步:复制插件的 Apps 脚本项目

升级后的插件使用与已发布的插件相同的 Google Cloud 项目,但请务必创建并使用基础 Apps 脚本项目的副本,以免现有用户在您测试升级版本时受到影响。升级原始脚本项目的副本还意味着,您始终可以访问原始代码,并且稍后可以根据需要重新部署。

  1. 打开现有的 Gmail 插件或日历会议插件 Apps 脚本项目。
  2. 点击左侧的概览
  3. 点击右侧的“复制”图标
  4. 在左侧,依次点击项目设置 > 更改项目
  5. 点击 GCP 项目编号
  6. 输入与现有已发布的插件 Apps 脚本项目关联的同一项目编号
  7. 点击设置项目

第 2 步:集成 Google Workspace 插件功能

您必须设计和实现要添加到插件的所有 Google Workspace 插件功能。

  1. 规划要在插件的首页卡片中显示哪些内容,以及它们是否应在 Gmail、日历、云端硬盘或三者的任意组合中显示。如果您希望某个首页在多个主机中,请确定它是同一个首页,还是为每个主机使用自定义首页卡片。
  2. 在复制的插件 Apps 脚本项目中,使用 homepageTrigger 函数构建首页卡片。请务必添加所需的任何支持函数或逻辑来控制新的首页界面。
  3. 考虑添加由用户的操作(如打开 Gmail 邮件会话日历活动)触发的上下文卡片。

  4. 更新插件(在 widget 回调函数或上下文触发器函数中)中对事件对象的任何访问,以使用更新后的事件对象结构。 新结构仍然包含与 Gmail 和 Google 日历会议插件相同的活动对象字段,但这些原始字段已废弃,最终将被移除。

第 3 步:更新插件的清单

配置信息在 Google Workspace 插件的清单结构中的存储方式与 Gmail 插件和日历会议插件的结构发生了显著变化。升级插件时,您必须根据下表更新插件的 Apps 脚本项目的清单字段。您必须将所有相关子媒体资源更新为新的 addOns 媒体资源。

此外,请务必根据需要更新清单的 oauthScopes 字段,以反映更新后的插件所需的权限。

如需详细了解 Google Workspace 插件清单,请参阅清单

Gmail 插件

原始清单字段 需要采取行动
gmail.composeTrigger 移至 addOns.gmail.composeTrigger
gmail.contextualTriggers[] 将列表移至 addOns.gmail.contextualTriggers[]
gmail.logoUrl 移至 addOns.common.logoUrl
gmail.name 移至 addOns.common.name
gmail.openLinkUrlPrefixes[] 将列表移至 addOns.common.openLinkUrlPrefixes[]
gmail.primaryColor 移至 addOns.common.layoutProperties.primaryColor
gmail.secondaryColor 移至 addOns.common.layoutProperties.secondaryColor
gmail.universalActions[] 将列表移至 addOns.common.universalActions[]
gmail.universalActions[].text 将每个 gmail.universalActions[].text 字段移至相应的 addOns.common.universalActions[].label 字段。
gmail.useLocalFromApp 移至 addOns.common.useLocaleFromApp

日历会议插件

原始清单字段 需要采取行动
calendar.createSettingsUrlFunction 移至 addOns.calendar.createSettingsUrlFunction
calendar.conferenceSolution[] 移至 addOns.calendar.conferenceSolution[]
calendar.logoUrl 移至 addOns.common.logoUrl
calendar.name 移至 addOns.common.name

第 4 步:测试升级后的插件

如需在发布之前测试升级插件,请参阅测试 Google Workspace 插件

第 5 步:申请审核升级后的插件

所有 Google Workspace 插件(无论是升级后的插件还是从头开始构建的插件)都必须先获得批准,然后才能在 Google Workspace Marketplace 上架。

请按照以下步骤提交插件以供审核:

  1. 确保您的插件符合所有插件发布要求

  2. 使用您要发布的代码版本为 Google Workspace 插件(在新的 Apps 脚本项目中)创建版本化部署。请勿尝试使用头部署进行发布。

  3. 如果您在升级插件时添加了新范围,则必须请求 OAuth 验证。例如,如果您的 Gmail 插件在 Google Workspace 插件版本中使用新的云端硬盘或日历范围,则必须提交这些新范围以进行验证。验证通常需要几天时间才能完成,因此请尽早启动此流程。请先确保您的插件已通过验证,然后再继续执行第 6 步。

第 6 步:提供升级后的插件

  1. 打开 Google Workspace Marketplace SDK。

  2. 点击左侧的配置。此面板包含一个表单,您可以在其中提供有关插件的信息。

  3. 更新商品详情的简短说明、详细说明和屏幕截图,以反映 Google Workspace 插件的新功能。

  4. 扩展程序下,点击升级到 Google Workspace 插件按钮。在显示的文本框中,输入您在上一步中为 Google Workspace 插件创建的新部署 ID。如果您的部署 ID 有效,则会显示受支持的主机列表。

  5. 如果您向 Google Workspace 插件添加了新范围,请务必将其添加到配置页面中的 OAuth 2.0 范围部分。该部分列出的范围应与插件清单中列出的范围完全匹配。

  6. 验证您在表单中输入的信息是否正确。然后,点击保存更改

如果您在此 Google Workspace 插件升级过程中遇到问题或遇到问题,请与我们联系

常见问题解答

以下是有关插件升级的常见问题解答:

我可以升级我的编辑器插件吗?

大多数编辑器插件都可以迁移至 Google Workspace 插件。但是,它们无法像 Gmail 和 Google 日历插件一样轻松地升级到 Google Workspace 插件。

如果您想将编辑器插件迁移到 Google Workspace 插件,则需要将该插件的界面从 HTML 重写为基于卡片的界面,并将 JavaScript 处理方式更新为卡片服务

现有编辑器插件中的部分服务可能无法在 Card Service 中使用。例如,如果您的编辑器插件包含文件选择器,就没有适用于 Google Workspace 插件的 Card Service 中的等效项。

我可以构建单独的 Google Workspace 插件并保留现有的插件吗?

欢迎您以不同的品牌名称构建其他 Google Workspace 插件,但我们不允许您的 Google Workspace 插件使用与 Google 插件同名的单独 Gmail 或日历会议插件。如果您有疑问或想要申请豁免,请与我们联系

该插件升级后,用户需要重新授权吗?

只要您的 Google Workspace 插件使用同一基础 Cloud Platform (GCP) 项目以及关联的 OAuth 客户端 ID,您的用户就不需要重新授权他们之前为原始插件授权的权限。但是,如果您在升级过程中添加了新范围,那么您的用户在首次使用 Google Workspace 版本的插件时必须授权这些新范围。

我可以将 Chrome 扩展程序升级为 Google Workspace 插件并转移用户吗?

不可以。您无法转移 Chrome 扩展程序的用户、安装和商家信息评价。您必须创建新的 Google Workspace 插件,并将 Chrome 扩展程序的用户定向到 Google Workspace Marketplace。

我可以将多个插件与 Google Workspace 插件打包在一起吗?

请参阅列出应用集成