4

我们在新的 google app scripts add on store 中发布了一个插件,但是在安装它的初始电子表格之外的任何电子表格中使用该插件时,权限似乎都无法正常工作。

我看到一个问题,当创建新电子表格并且用户从“管理加载项”菜单中选择“使用此加载项”时,我们的菜单项不会被填充。目前,我们一直在告诉人们删除加载项并重新安装以强制权限流获得完整权限。

我查看了https://developers.google.com/apps-script/add-ons/lifecycle#opening上的权限生命周期指南,看来我们的 onOpen 函数应该能够在 LIMITED 权限模式下添加菜单项:

function onOpen(e) {
  var menu = SpreadsheetApp.getUi().createAddonMenu();
  menu.addItem("About OurApp", 'aboutOurApp');
  menu.addItem("Show Sidebar", "showSidebar");
  menu.addToUi();
  Logger.log(e);
  if (e && (e.authMode == ScriptApp.AuthMode.NONE || e.authMode == ScriptApp.AuthMode.LIMITED)) {
    return; // once user selects a menu item, full permissions should be asked for according to docs.
  } else {
   // we have full permissions - show the sidebar.
    var ui = HtmlService.createHtmlOutputFromFile('Sidebar')
     .setTitle('Our App');
    SpreadsheetApp.getUi().showSidebar(ui);
  }
}

有谁知道我们做错了什么?

4

0 回答 0