speech_recognition
активно не поддерживается. Так много запросов на вытягивание все еще ожидают объединения. Вы можете предпочесть библиотеку speech_to_text .
В функции _platformCallHandler
перед случаем default
добавьте регистр ниже.
case "speech.onError":
errorHandler();
break;
Объявить errorHandler
ниже recognitionCompleteHandler
.
VoidCallback errorHandler;
В конце файла объявите метод publi c, чтобы установить этот errorHandler
void setErrorHandler(VoidCallback handler) => errorHandler = handler;
Это большая работа, поэтому вы можете используйте библиотеку flutter_speech , в которой уже реализованы указанные выше функции.
В вашей реализации обработайте обработчик ошибок
_speechRecognition.setErrorHandler(() {
initSpeechRecognizer();
});