Google Workspace插件测试正常正式部署失效问题求助
问题分析与解决方案
核心问题定位
测试部署正常但正式部署失效,主要原因集中在OAuth权限缺失、资源URL不完整这两个硬限制上——正式部署对配置规范的要求远严格于测试环境。
具体修复步骤
1. 补全OAuth权限声明
正式部署的Add-on必须明确声明所有需要的权限,测试时自动获取的权限在正式环境不生效。在oauthScopes数组中添加以下必要权限(可根据实际功能调整):
"oauthScopes": [ "https://www.googleapis.com/auth/spreadsheets", "https://www.googleapis.com/auth/classroom.courses", "https://www.googleapis.com/auth/admin.directory.user" ]
spreadsheets权限:用于调用SpreadsheetApp.getUi().showSidebar操作侧边栏;classroom.courses:对应Classroom服务的课程管理需求,可根据实际操作调整细分权限;admin.directory.user:对应AdminDirectory服务的用户管理权限。
2. 修复Logo URL与白名单地址
正式部署要求所有外部资源URL必须完整,不能省略协议头:
- 将
logoUrl修改为:"https://iili.io/dTYC3Dx.png" - 将
urlFetchWhitelist中的地址修改为:"https://iili.io/"
不完整的URL会导致插件资源加载失败,直接触发正式部署后的显示异常。
3. 优化清单触发器配置
目前common和sheets下都配置了homepageTrigger,虽不会直接导致失效,但建议只保留sheets下的触发器(因插件仅针对Sheets),避免逻辑冲突:
"addOns": { "common": { "name": "Zarządzanie Classroomem", "logoUrl": "https://iili.io/dTYC3Dx.png", "useLocaleFromApp": true }, "sheets": { "homepageTrigger": { "runFunction": "createCard", "enabled": true } } }
4. 部署后权限授权验证
正式发布后,用户首次使用插件时必须完成完整的OAuth授权流程。若插件未通过Google官方验证,需引导用户在授权页面选择「高级」→「继续访问」(仅内部测试或域内发布时适用,公开发布需完成官方验证)。
代码逻辑说明
你编写的createCard函数同时返回空Card和打开侧边栏的逻辑是可行的,但需确保正式环境中权限足够——测试环境因是开发者本人调用,权限限制宽松,正式环境则严格遵循声明的权限范围。
内容的提问来源于stack exchange,提问作者kacper bednarski
相关产品推荐
相关产品推荐

