Google Actions基础卡片换行失效问题求助
解决Google Actions Basic Card多行显示问题
我之前也踩过这个坑,Google Actions的Basic Card对换行的处理确实有严格要求,必须遵循它支持的有限Markdown子集规则才行。
问题原因
你提到的<br>标签在模拟器能显示但真实设备不行,是因为官方明确只支持双空格+换行的Markdown换行方式,HTML标签并不在支持列表里,真实设备会直接把<br>当作纯文本渲染。而你之前双空格换行没生效,大概率是字符串里的格式没写对。
正确实现方式
要实现多行,需要在每一行的末尾添加两个空格,再加上换行符\n(在JavaScript字符串中)。这样Basic Card就能正确识别并渲染成多行。
修改后的代码示例
app.ask(app.buildRichResponse() .addSimpleResponse("Simple response") .addBasicCard(app.buildBasicCard('L1 \nL2 \nL3')) // 每一行末尾加两个空格+换行符 );
注意事项
- 确保每一行内容的最后都有两个空格,少一个都不行
- 不要使用HTML标签(比如
<br>),避免真实设备上显示异常 - 如果是多行复杂内容,同样可以用这个规则逐行处理
内容的提问来源于stack exchange,提问作者rahulmr
相关产品推荐
相关产品推荐

