У меня небольшая проблема с методом android.speech.SpeechRecognizer.
speechRecognizer.startListening(speechIntent)
Иногда требуется много времени, пока не запустится "готовый" звук (в основном после перезапуска приложения).Я не могу найти что-то вроде слушателя onSpeechRecognitionReady.Как я могу поймать это событие, чтобы сделать progressBar?
Я могу инициализировать распознаватель таким образом
private fun initSpeechRecognizer() {
speechIntent = Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH)
speechIntent.putExtra(RecognizerIntent.EXTRA_LANGUAGE, "en-US")
speechIntent.putExtra(RecognizerIntent.EXTRA_CALLING_PACKAGE, packageName)
speechRecognizer = SpeechRecognizer.createSpeechRecognizer(this)
speechRecognizer.setRecognitionListener(object : RecognitionListenerAdapter(){
override fun onResults(results: Bundle) {
val matches = results.getStringArrayList(SpeechRecognizer.RESULTS_RECOGNITION)
tv_speech.text = matches[0]
btn_speech.isChecked = false
}
})
}