使用Dialog Flow开发Google Assistant,Actions on Google Simulator无法展示交互组件求助
排查Actions on Google Simulator不显示卡片/列表的问题
别慌,这种没改代码却突然出现的故障,大概率是平台缓存、环境配置或者临时服务波动导致的,咱们一步步来排查:
1. 先重置会话+清理浏览器缓存
- 打开Actions on Google Simulator,点击右上角的重置会话按钮(那个循环箭头图标),彻底清空当前对话的上下文数据
- 顺手清一下浏览器缓存(Chrome按
Ctrl+Shift+Delete,勾选「缓存的图片和文件」,时间范围选「过去一小时」就行)——毕竟模拟器是网页端工具,过期缓存很可能搞乱渲染逻辑
2. 确认Dialogflow的部署和版本状态
- 检查Agent版本:进入Dialogflow控制台,点左侧齿轮图标打开设置,确认「API版本」是V2(现在模拟器对V1的支持已经基本停更了,老版本容易出兼容问题)
- 手动触发部署:在Dialogflow右上角点部署,选择「部署到Actions on Google」——有时候自动同步会有延迟,手动推一次能确保最新的响应配置都同步到平台
3. 验证响应格式是否合规
虽然你没改代码,但说不定平台的响应规范悄悄做了微调?可以用Dialogflow自带的测试工具先验证:
- 打开Dialogflow右上角的「测试」开关,输入触发卡片/列表的指令,切换到「响应」标签页看JSON结构
- 确保卡片/列表的格式严格符合Actions on Google规范,比如基础卡片的正确结构应该是这样:
{ "google": { "richResponse": { "items": [ { "basicCard": { "title": "测试卡片标题", "formattedText": "卡片正文内容" } } ] } } }
4. 核对模拟器的环境配置
- 检查语言/地区匹配:点模拟器右上角的设置图标,确认「语言」「地区」和你的Dialogflow Agent完全一致——比如Agent是中文(中国大陆),模拟器就不能选英文(美国),否则响应会被过滤
- 切换设备类型试试:比如从「智能音箱」切换到「手机」,有些富媒体响应(比如卡片)只在特定设备类型下显示,音箱端可能只播报语音
5. 检查平台服务状态和项目权限
- 登录Actions Console,找到你的项目,在左侧「测试」页面确认项目处于「测试中」状态,没有被意外暂停
- 可以查一下Google官方的服务状态页面,看看Actions on Google有没有临时的服务故障(这类故障通常会快速修复)
如果以上步骤都试过还是不行,建议去Dialogflow的历史记录里看具体的请求/响应日志——有时候模拟器不显示内容,其实是响应里藏着语法错误,日志里会明确标出问题点。
内容的提问来源于stack exchange,提问作者Дмитрий Повод
相关产品推荐
相关产品推荐

