Ich habe ein Google Docs-Add-on, das so programmiert ist, dass die Sidebar geöffnet wird, sobald das Dokument geöffnet ist. Dies erfordert natürlich, dass das Add-On im Dokument installiert und aktiviert wird.Add-on mit LIMITED Auth kann Sidebar nicht öffnen
Ich sehe, dass seit einer Woche, die Sidebar Auto Open-Funktion, die in unserem Anwendungsfall sehr nützlich ist, nicht mehr funktioniert.
In Stackdriver logs Ich sehe diesen Bericht:
onOpen(): {authMode=LIMITED, source=Document, user=}
publi-2.0.72-2017-11-27-18-57 [this is the publication version tag]
2017-11-27T18:02:50.126Z : show menu
2017-11-27T18:02:50.180Z : show sidebar
Error showing sidebar Exception: You do not have permission to call showSidebar
2017-11-27T18:02:50.283Z : end onOpen
So klar, das Add-on ist in LIMITED Modus und showSidebar() sollte in der Spalte BESCHRÄNKT in der Suche nach dem addon authorization lifecyle (nur gelingen Tabelle).
-> Ich vermute, ein Bug oder eine neue Sicherheitsbeschränkung wurde kürzlich eingeführt.
Für die Aufzeichnung hier ist ein Code-Schnipsel:
/**
* Basic setup. At the beginning:
* 1. Add a "Add-ons" menu item.
* 2. Display the doxMaster sidebar.
*/
function onOpen(e) {
console.log("onOpen(): ",e)
console.log(addonversion);
doServerLog("show menu");
showMenu();
doServerLog("show sidebar");
showSidebar();
doServerLog("end onOpen");
}
/**
* Creates the Add-ons menu at the google drive panel.
*/
function showMenu() {
DocumentApp.getUi().createAddonMenu()
.addItem(translate("sidebarMenu"), showSidebar.name)
.addItem(translate("joinFollowingParagraph"), insertJoinFollowingParaSymbol.name)
.addItem(translate("importDocument"), importDocument.name)
.addItem(translate("about"), about.name)
.addToUi();
}
/**
* Creates a doxMaster Add-on Sidebar.
*/
function showSidebar() {
try {
var htmlTemplate = HtmlService.createTemplateFromFile('sidebar');
var html = htmlTemplate.evaluate().setTitle(translate("appTitle"));
DocumentApp.getUi().showSidebar(html);
}
catch (e) {
console.log("Error showing sidebar ", e); // Add-on has not been enabled in this document
}
}
Es gibt eine neue Berechtigung, die von Apps Script benötigt wird, um etwas mit einer Seitenleiste oder einem Dialogfeld auszuführen. Es gibt keine Dokumentation darüber, soweit ich weiß, und ich weiß von keiner Ankündigung über die Änderung. Ihre Benutzer werden möglicherweise aufgefordert, Ihr Add-On erneut zu autorisieren, und danach funktioniert es hoffentlich wie vorgesehen. Die neue Berechtigung lautet "Webinhalte von Drittanbietern in Eingabeaufforderungen und Seitenleisten in Google-Anwendungen anzeigen und ausführen". Aus diesem Grund erhalten Sie den Fehler hoffentlich. Wenn Ihr Add-on bereits installiert und vom Benutzer aktiviert wurde, glaube ich nicht, dass es den Status "Aktivieren" verlieren würde. –
Sie haben Recht, darauf hinzuweisen. Ich habe bereits versucht, das Add-on von Grund auf neu zu registrieren/zu registrieren und fragte mich, warum ich diese neue Erlaubnis im Zustimmungsbildschirm angefordert hatte. Aber auch nach dieser neuen Zustimmung ist das Problem immer noch da. – Yves