现在只欠调用我们的plugin完成语音识别。以及跳转到搜索页面,把识别的结果带过去。完成一个语音搜索的功能

定义语音识别的结果的变量

判断识别的结果如果不为空那么就设置识别结果的变量。

彩蛋
页面跳转,并把识别的结果带过去,首先要关闭当前页面。
彩蛋:一定要关闭当前页面,才能进行跳转。不然你会看到无法跳转这样的一个结果。

打印识别的结果

停止识别的调用

在模拟器上是无法识别我们的语音的。这是IOS的模拟器导致的

安卓模拟器下测试

点击按钮后,说话。

并没有返回语音识别的结果。日志报错

安卓端抛出了错误。

这里我们打印出具体的异常信息。

调试安卓端代码
用安卓Studio打开我们的代码



在这里我们加一个断点

点击这个按钮,让我们的Android Stuido关联到debug进程。


点击按钮会进去到断点上去。

进入到start这个方法

进入方法后,再一步一步的走。


这里是一个关键性的错误,

加一个叹号。非

重新运行项目

说上海,自动跳转把文字带过来了

跳过去之后,并没有触发搜索页面的搜索。这个问题就出在dart端的搜索页面
打开搜索页面
这里接受的keyword

接收到keyword以后,我们还需要关键的一步,在我们的页面初始化的时候。

再次测试

再说一个长城

回顾
解决了一个bug
active不等于空,并且没有被关闭的时候。

获取到语音识别的结果后,搜索页面要根据关键字进行搜索。
