无论是使用createAddonMenu()还是createMenu(),当通过GSM安装附加组件或通过G-Suite Marketplace SDK与“与Google集成”一起打开时,我都无法创建菜单。通过脚本编辑器的“作为加载项测试”有效,通过Chrome Web Store的安装有效,并且我不知道有什么问题。我不确定脚本是否首先运行。
我尝试了StackOverflow的现有解决方案,例如以不同的顺序调用函数,但是似乎没有任何效果。
有人知道什么可能会阻止附件/脚本与GSM一起使用吗?
这是我使用的onOpen和onInstall函数。
function onOpen(e) {
if(LOGENAB){console.log("onOpen...");}
if(LOGENAB){console.log(e.authMode);}
if(e && e.authMode == ScriptApp.AuthMode.NONE){
// Authorization needed
if(LOGENAB){console.log("# Authorization required!");}
var ui = FormApp.getUi();
var menu = ui.createMenu('title');
menu.addItem('Authorize', 'authorizeAddon');
menu.addToUi();
} else {
// Authorization not needed
if(LOGENAB){console.log("# Authorization OK!");}
var ui = FormApp.getUi();
var menu = ui.createMenu('title');
menu.addItem('Control Panel', 'showControlPanel');
menu.addItem('About', 'showAbout');
menu.addItem('Reset running status','toggleStatus');
menu.addToUi();
}
}
function onInstall(e) {
if(LOGENAB){console.log("onInstall...");}
onOpen(e);
}
答案 0 :(得分:0)
通过GSM安装时,发布为未列出的附加组件不会在具有旧版G-Suite服务的编辑器中显示。这似乎已在该服务的当前版本中修复。