升级旧版 Gmail 和 Google 日历插件

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

您可以将新功能转移到原始插件中,以保留您的 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、Google 日历、云端硬盘还是这三个宿主的任意组合中。如果您希望在多个主机中显示首页,请确定是使用同一首页,还是为每个主机自定义首页卡片。
  2. 在复制的插件 Apps 脚本项目中,使用 homepageTrigger 函数构建首页卡片。请务必添加控制新首页界面所需的任何支持函数或逻辑。
  3. 不妨考虑添加由用户操作(例如打开 Gmail 消息串日历活动)触发的情境化卡片。

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

第 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 脚本项目中)创建版本化部署。请勿尝试使用 Head 部署进行发布。

  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 加购项升级过程中有任何疑问或遇到任何问题,请与我们联系

常见问题解答

以下是有关加购项升级的常见问题:

我可以升级 Editor 加购项吗?

大多数编辑器插件都可以迁移到 Google Workspace 插件。不过,与 Gmail 和日历的插件相比,这些插件无法轻松升级为 Google Workspace 加购项。

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

现有编辑器插件中的某些服务可能无法在卡片服务中使用。例如,如果您的编辑器插件包含文件选择器,则 Google Workspace 插件的卡片服务中没有等效的选项。

我可以构建单独的 Google Workspace 加购项并保留现有加购项吗?

我们欢迎您以不同的品牌名称构建其他 Google Workspace 插件,但我们不允许以与您的 Google Workspace 插件相同的品牌名称单独构建 Gmail 或日历会议插件。如果您有任何疑问或想申请按例外情况处理,请与我们联系

升级后,我的用户是否需要重新授权该插件?

只要您的 Google Workspace 插件使用相同的底层 Cloud Platform (GCP) 项目(具有关联的 OAuth 客户端 ID),您的用户就不需要重新授予他们之前为原始插件授予的权限。不过,如果您在升级过程中添加了新范围,用户必须在首次使用 Google Workspace 版加购项时授权这些新范围。

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

不可以。您无法转移 Chrome 扩展程序的用户、安装次数和商品详情评价。您必须创建新的 Google Workspace 插件,并将 Chrome 扩展程序的用户引导至 Google Workspace Marketplace。

我可以将多个插件与我的 Google Workspace 插件捆绑在一起吗?

请参阅将应用集成列在一起