Houndify:在使用HoundifyVoiceSearchActivity搜索音频时,错误:令牌之间只允许常规空格(\ r,\ n,\ t)

时间:2016-09-27 06:19:25

标签: android houndify

我使用从https://docs.houndify.com/sdks#android下载的Houndify android sdk示例项目(v0.2.19),但是当我启动HoundifyVoiceSearchActivity搜索音频时,我得到的错误如下:

  

com.soundhound.android.houndify.sample E / HOUNDIFY_DEBUG:获取回复时出错                                                                                          com.hound.core.ParseException:读取类型的对象时出错:PartialTranscript                                                                                              在com.hound.core.HoundMapper.read(HoundMapper.java:147)                                                                                              在com.hound.core.HoundMapper.read(HoundMapper.java:160)                                                                                              在com.hound.android.sdk.impl.connection.HttpVoiceConnection $ ReceiveResponseThread.run(HttpVoiceConnection.java:321)                                                                                           引起:com.fasterxml.jackson.core.JsonParseException:非法字符((CTRL-CHAR,代码31)):令牌之间只允许使用常规空格(\ r,\ n,\ t)                                                                                           at [来源:java.io.StringReader@4313edd0; line:1,column:2]                                                                                              at com.fasterxml.jackson.core.JsonParser._constructError(JsonParser.java:1586)                                                                                              at com.fasterxml.jackson.core.base.ParserMinimalBase._reportError(ParserMinimalBase.java:521)                                                                                              at com.fasterxml.jackson.core.base.ParserMinimalBase._throwInvalidSpace(ParserMinimalBase.java:472)                                                                                              在com.fasterxml.jackson.core.json.ReaderBasedJsonParser._skipWSOrEnd(ReaderBasedJsonParser.java:2283)                                                                                              在com.fasterxml.jackson.core.json.ReaderBasedJsonParser.nextToken(ReaderBasedJsonParser.java:601)                                                                                              at com.fasterxml.jackson.databind.ObjectMapper._initForReading(ObjectMapper.java:3828)                                                                                              at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:3773)                                                                                              at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:2826)                                                                                              在com.hound.core.HoundMapper.read(HoundMapper.java:140)                                                                                               ......还有2个

我发现结果json字符串包含空格(ASCII 32),是错误的原因吗?我怎么解决它?

1 个答案:

答案 0 :(得分:0)

如果你下载最新的Android SDK,它现在已经解决了。基本上,如果使用不受支持的语言,则会有一个配置变量导致它无法工作。您会看到它现在已在最新版本中注释掉,默认为英文。

builder.setInputLangIetfTag( Locale.getDefault().getLanguage() ); // Comment out this line