Меню надстроек не создается при публикации через G-Suite Marketplace SDK, а через Chrome Web Store - PullRequest
0 голосов
/ 07 июля 2019

Будь то с помощью createAddonMenu () или createMenu (), я не могу создать меню, когда надстройка установлена ​​через GSM или когда открывается с помощью «Интегрировать с Google» через G-Suite Marketplace SDK.«Проверить как дополнение» через Script Editor работает, установка через 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);
}
...