问题描述
我们有 Gmail 工作区插件,可用于 Gmail 网络应用和 Gmail 移动应用。
出于某种原因,在 Gmail 移动应用中运行时,没有可用的后退导航。下面的屏幕截图显示了 Web 应用程序上的导航。
但这在移动应用上不可用吗?
我在任何地方都看不到这种差异的记录。是否有什么我们没有设置来启用此功能?
此外,除了后退导航不可用之外,每当我们尝试通过应用脚本设置导航时,我们都会收到错误消息。
例如以下内容:
cs.newActionResponseBuilder().setNavigation(cs.newNavigation().popCard()).build()
仅在移动应用上给出错误 -
未能完成您的操作,因为加载项将处于错误状态 状态
这种行为是否符合预期?是否有其他一些我们不知道的控制 Gmail Mobile 导航的方法?
解决方法
我发现了问题......以防其他人遇到它。
在我的代码中 - 当调用的函数返回卡片时会导致问题,如下面的代码片段
function loadStackCard() {
var emailCard = CardService.newCardBuilder().setHeader(CardService.newCardHeader().setTitle('STACK CARD'))
.addSection(CardService.newCardSection().addWidget(CardService.newTextButton().setText('GO BACK')
.setOnClickAction(CardService.newAction().setFunctionName('goBack')))).build();
return emailCard;
}
但是当我将卡片推到导航堆栈上时,它可以在移动设备上运行
function loadStackCard() {
var emailCard = CardService.newCardBuilder().setHeader(CardService.newCardHeader().setTitle('STACK CARD'))
.addSection(CardService.newCardSection().addWidget(CardService.newTextButton().setText('GO BACK')
.setOnClickAction(CardService.newAction().setFunctionName('goBack')))).build();
nav = CardService.newNavigation().pushCard(emailCard) ;
return CardService.newActionResponseBuilder().setNavigation(nav).build();
}