Google Apps Script部署异常:测试后Google Workspace Add-on不显示
排查Google Workspace Add-on(Calendar)Test Deployment无显示的问题
以下是按优先级排列的排查步骤:
验证appsscript.json核心配置
确保addOns字段针对Calendar的配置完整,且包含必要权限:{ "timeZone": "America/New_York", "dependencies": {}, "oauthScopes": [ "https://www.googleapis.com/auth/calendar", "https://www.googleapis.com/auth/script.container.ui" ], "runtimeVersion": "V8", "addOns": { "calendar": { "eventOpenTrigger": { "runFunction": "showCalendarAddon" }, "contextualTriggers": [ { "unconditional": {}, "onTriggerFunction": "showSidebar" } ], "homepageTrigger": { "runFunction": "showHomepage", "enabled": true } } } }重点检查:
oauthScopes必须包含Calendar相关权限(按需选择readonly或全权限)runtimeVersion设为V8calendar下至少配置一个触发函数(如eventOpen或homepageTrigger)
确认Cloud Console项目关联与API状态
- 打开Apps Script项目,点击右上角
项目设置,确认Google Cloud Platform (GCP) 项目为你配置的目标项目 - 进入对应GCP项目,搜索API库找到
Calendar API,确认状态为“已启用” - 检查GCP的
OAuth同意屏幕:- 若状态为“测试中”,需将你的测试账号添加到“测试用户”列表
- 已添加的
授权范围要和appsscript.json里的oauthScopes完全匹配
- 打开Apps Script项目,点击右上角
检查部署设置
- 点击
部署→测试部署,确认部署类型为Google Workspace Add-on - 部署权限选择
仅限我(测试阶段),且确保创建的是新版本(不要选择旧版本) - 部署完成后复制测试链接,用测试账号打开Calendar,尝试触发插件(如打开日历事件或刷新主页)
- 点击
验证初始化代码逻辑
确保Code.gs中有对应触发函数的实现,比如:function showCalendarAddon(e) { const card = CardService.newCardBuilder() .setHeader(CardService.newCardHeader().setTitle("我的日历插件")) .addSection(CardService.newCardSection().addWidget(CardService.newTextParagraph().setText("插件已加载"))) .build(); return CardService.newAddOnBuilder().addCard(card).build(); }注意:若未正确返回CardService构建的UI,插件无法在侧边栏显示
清除缓存与环境测试
- 用无痕模式打开Google Calendar,登录测试账号检查插件是否出现
- 清除浏览器缓存后重新登录,避免旧配置残留
- 确保测试账号未同时登录多个Google账号,避免权限冲突
检查授权状态
在脚本编辑器中手动运行一次触发函数(如showCalendarAddon),此时系统应弹出OAuth授权请求。若仍不弹出,说明权限配置存在问题,需重新检查GCP的OAuth同意屏幕和appsscript.json的scopes。
内容的提问来源于stack exchange,提问作者Danish Karmally
相关产品推荐
相关产品推荐

