当前位置: 首页 > 知识库问答 >
问题:

Flutter:语音到文本错误方法'initialize'在null时被调用

王炜
2023-03-14

我正试图将语音到文本的方法添加到我的应用程序中,以转换我的,但我有这个错误

bool isListening = false;
  stt.SpeechToText _speech;

void listen() async {
    if (!isListening) {
      bool available = await _speech.initialize(
        onStatus: (val) => print('onState: $val'),
        onError: (val) => print('onError: $val'),
      );
      if (available) {
        setState(() => isListening = true);
        _speech.listen(
          onResult: (val) => setState(() {
            resultText = val.recognizedWords;
          }),
        );
      } else {
        setState(() => isListening = false);
        _speech.stop();
      }
    }
  }
Row(
                                          mainAxisAlignment:
                                              MainAxisAlignment.center,
                                          children: <Widget>[
                                            AvatarGlow(
                                              animate: isListening,
                                              glowColor: Colors.red[200],
                                              endRadius: 75.0,
                                              duration: const Duration(
                                                  milliseconds: 2000),
                                              repeatPauseDuration:
                                                  const Duration(
                                                      milliseconds: 100),
                                              repeat: true,
                                              child: FloatingActionButton(
                                                child: Icon(isListening
                                                    ? Icons.mic
                                                    : Icons.mic_none),
                                                onPressed: (){
                                                  listen();
                                                },
                                                mini: true,
                                              ),
                                            ),
                                            Container(
                                              width: MediaQuery.of(context)
                                                      .size
                                                      .width *
                                                  0.4,
                                              decoration: BoxDecoration(
                                                color: Colors.grey[350],
                                                borderRadius:
                                                    BorderRadius.circular(
                                                        10.0),
                                              ),
                                              child: Text(
                                                resultText,
                                              ),
                                            ),
                                          ],
                                        ),

所以有人能帮我吗!

共有1个答案

杭永安
2023-03-14

出现此错误是因为您没有实例化stt.speechtotext对象,然后调用包的initialize函数。

您可以使用以下方法实例化它

stt.SpeechToText _speech = stt.SpeechToText();
 类似资料:
  • 我一直在学习如何构建一个类似Instagram的社交媒体应用程序的教程,尽管我的代码与教程中的代码相同,但当我试图显示用户的帖子时,我得到了这个错误: building FutureBuilder(脏,状态:_FutureBuilderState#0C840)引发了以下NosuchMethodeRor:方法“[]”是在NULL上调用的。接收者:null尝试调用:

  • 当我将其更改为list时,出现以下错误: 这里是我的小部件构建: 对于API、模型和其他函数,您可以在未处理的异常中检查我的另一篇文章:键入“\u InternalLinkedHashMap”

  • 我试图使用API中的数据,但我需要的数据是为不同的请求找到的。在颤栗中有未来。通过这个,我可以请求API的必要部分。我的想法是,我正在努力为火车制定时间表。在这个列车时刻表中,我需要列车号、站台名和到达时间。我正在尝试按照文档和视频中所描述的方式执行所有操作,但我做不到,因为我遇到了一个错误 在这里提问之前,我试着做了这样的事情: 但是它不起作用,给我一个错误: 对null调用了方法“[]”。接收

  • 带有en-us语音的AVSpeechsynthesizer是“A”的发音,是“大写字母A”,但只想要“A”,怎么能做到呢?

  • 我想在我的应用程序中转换语音到文本...对于这个,我正在使用识别监听器界面一切正常,但如何更新和显示文本,即使说话(像在谷歌现在语音搜索) 我已经设置了识别意图。EXTRA_PARTIAL_RESULTS,为真,并且还使用了识别监听器界面的onPARAL结果(Bundle arg()方法来设置文本通过语音识别完成后立即显示整个文本,但是我希望实时文本在用户说话时显示 我的活动 怎么让这一切发生