Элементы меню Sheet Add-on вызывают меню «Install add-on», когда приложение уже установлено - PullRequest
1 голос
/ 17 октября 2019

Мое дополнение работало в магазине Chrome, но недавно Google потребовалось перенести приложения на GSuite Marketplace.

Теперь у нас возникла проблема с приложением:

  1. Работает нормально, когда пользователь впервые его устанавливает - триггер onInstall открывает боковую панель для функционального инструмента.
  2. Как только пользователь обновляет страницу, при нажатии на любые дополнительные пункты меню появляетсясписок GSuite Marketplace для нашей надстройки вместо создания боковой панели.

В листинге показано, что надстройка установлена, поэтому пользователь ничего не может сделать, кроме как закрыть список GSuite.

Я прочитал документы по жизненному циклу аутентификации, https://developers.google.com/gsuite/add-ons/concepts/editor-auth-lifecycle#installed_versus_enabled,, но, поскольку приложение уже включено в документ и установлено пользователем, не должно возникнуть никаких проблем при открытии боковой панели (для этого требуетсяauth.LIMITED).

Я локально протестировал надстройку с моей учетной записью домена gsuite, которая опубликовала надстройку, и она работает нормально. Описанная выше проблема возникает только тогда, когда надстройка устанавливается обычной учетной записью пользователя Google.

Я тестировал открытие боковой панели в функции триггера onOpen (), но это не поддерживается в режиме auth.NONEи я получаю ошибку в моих журналах. Для вышеуказанной проблемы я не вижу никаких ошибок аутентификации в моих журналах, что заставляет меня думать, что это не проблема с режимами авторизации.

Вот мой код для создания меню и функция для открытияДиалог боковой панели.

function createMenu() {
  var menu = SpreadsheetApp.getUi().createAddonMenu();
  menu.addItem('Open tool', 'openSidebar')
  menu.addToUi();
}


function openSidebar() {
  var html = HtmlService.createHtmlOutputFromFile('sidebar')
      .setTitle("Sidebar");
  SpreadsheetApp.getUi()
      .showSidebar(html);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...