迅飞语音数字匹配阿拉伯数字或汉字

1. 说明

最近项目需求中集成了迅飞语音听写功能,遇到一个问题:比如说:“一百个商品”,返回的文字为大写汉字,而不是“100个商品”,项目中需要的是阿拉伯数字,但是查阅了迅飞的文档,貌似并没有给出相关的设置,而设置参数类里面com.iflytek.cloud.SpeechConstant中也没有提供相关的参数,后来经过大量查阅,终于找到设置方法。

2. 解决方法

// 设置识别中文还是数字:(1更倾向于数字; 0更倾向于中文数字)
mIat.setParameter("nunum","1");

3.补充

需要额外说明一下,我在刚设置完后并没有立马在程序中起作用,刚开始以为随着迅飞版本的迭代,这个API已经不起作用了,也有可能是AndroidStudio Instant Run的缘故,总之过了一会才起作用,你也可以尝试一下彻底将将用关闭后再打包上去试一下。

还有一点需要注意,说数字的时候一位数字还是默认中文的,比如你说“3袋方便面”,它会识别成“三袋方便面”,但是你说“30袋方便面”或是“300袋方便面”是好使的,它会识别成阿拉伯数字。

猜你喜欢

转载自blog.csdn.net/haha223545/article/details/80451231