For various reasons, I need to use the raw SpeechRecognizer
API instead of the easier RecognizerIntent
(RECOGNIZE_SPEECH) activity.
That means,
you can destroy current session by destroy(). And you can restart it again
No, cancel
is not called when onError
is invoked. You can look at the source here.
Actually Femi, some of the error conditions DO stop the transcription service from listening (SpeechRecognizer.ERROR_SPEECH_TIMEOUT for example). It is not necessary to call destroy, just startlistening again.