안드로이드 스튜디오 코틀린 질문이요!! 채택완료

Copy
public override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    setContentView(R.layout.activity_main)


    val i = Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH)
    i.putExtra(RecognizerIntent.EXTRA_CALLING_PACKAGE, packageName)
    i.putExtra(RecognizerIntent.EXTRA_LANGUAGE, "ko-KR")

    val mRecognizer = SpeechRecognizer.createSpeechRecognizer(this)
    mRecognizer.setRecognitionListener(listener)
    mRecognizer.startListening(i)

}   private val listener: RecognitionListener = object : RecognitionListener {
        override fun onRmsChanged(rmsdb: Float) {

            // TODO Auto-generated method stub

       }


        override fun onResults(results: Bundle) {

            // TODO Auto-generated method stub

        }

        override fun onReadyForSpeech(params: Bundle) {

            // TODO Auto-generated method stub
       }

        override fun onPartialResults(partialResults: Bundle) {

            // TODO Auto-generated method stub
       }

        override fun onEvent(eventType: Int, params: Bundle) {

            // TODO Auto-generated method stub
       }

        override fun onError(error: Int) {

            // TODO Auto-generated method stub
       }

        override fun onEndOfSpeech() {

           // TODO Auto-generated method stub


            mRecognizer.startListening(i)


}

override fun onBufferReceived(buffer: ByteArray) {

// TODO Auto-generated method stub
}

override fun onBeginningOfSpeech() {

// TODO Auto-generated method stub
}

}

}

 

onEndOfSpeech()에서 다시 음성 녹음을 실행하는 mRecognizer.startListening(i) 실행시켜줄려면 어떻게 코드를 적어야되나요?

답변 1개

채택된 답변
+20 포인트

찾아봐도 답이 없네요.  https://stackoverflow.com/questions/18650072/android-speech-speech-recognition-repeated-calling-of-speechrecognizer-startlis

를 보니 onResults 에서 처리하면 될것도 같습니다

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인
🐛 버그신고