public interface SpeechRecognitionListener
SpeechRecognizer 클래스에서 발생한 이벤트를 감지하여 해당하는 콜벡 메소드를 호출합니다.
커스텀 리스너는 선언되어 있는 콜백 메소드를 오버라이딩(implements)하여, 애플리케이션에서 원하는 동작을 하도록 구현합니다.
SpeechRecognizer.setSpeechRecognitionListener(SpeechRecognitionListener) 메소드를 통해 등록해야 합니다.| Modifier and Type | Method and Description |
|---|---|
void |
onEndPointDetected()
EPD(end point detection) 즉, 음성 발성이 종료되었음을 클라이언트가 감지하였을 때 호출됩니다.
|
void |
onEndPointDetectTypeSelected(SpeechConfig.EndPointDetectType epdType)
hybrid EPD 모드에서 EPD 종류가 결정되면 호출됩니다.
|
void |
onError(int errorCode)
음성인식중에 오류가 발생하였을 때 호출됩니다.
|
void |
onInactive()
음성인식이 완료된 상태일 때 호출됩니다.
|
void |
onPartialResult(java.lang.String partialResult)
음성인식 서버로부터 인식 중간 결과를 받으면 호출됩니다.
|
void |
onReady()
음성인식 준비가 완료된 상태일 때 호출됩니다.
|
void |
onRecord(short[] speech)
음성 입력을 받은 즉시 호출됩니다.
|
void |
onResult(SpeechRecognitionResult finalResult)
음성인식 서버로부터 인식 최종 결과를 받으면 호출됩니다.
|
void onInactive()
void onReady()
void onRecord(short[] speech)
speech - 음성 신호가 저장된 버퍼void onPartialResult(java.lang.String partialResult)
partialResult - 음성인식 중간 결과void onEndPointDetected()
SpeechRecognizer.recognize(SpeechConfig)를 호출할 때 전달된 SpeechConfig에 따라
음성인식 서버에 의해서 감지되기도 하고, 유저가 SpeechRecognizer.stop()을 호출하여 즉시 생성되기도 합니다.
void onResult(SpeechRecognitionResult finalResult)
finalResult - 음성인식 최종 결과
SpeechRecognitionResult.getResults()void onError(int errorCode)
errorCode - SpeechRecognizer에 정의된 오류 코드 중 하나SpeechRecognizer.ERROR_AUDIO_FINIALIZE,
SpeechRecognizer.ERROR_AUDIO_INITIALIZE,
SpeechRecognizer.ERROR_AUDIO_RECORD,
SpeechRecognizer.ERROR_NETWORK_FINALIZE,
SpeechRecognizer.ERROR_NETWORK_INITIALIZE,
SpeechRecognizer.ERROR_NETWORK_NACK,
SpeechRecognizer.ERROR_NETWORK_READ,
SpeechRecognizer.ERROR_NETWORK_WRITE,
SpeechRecognizer.ERROR_INVALID_RESULT,
SpeechRecognizer.ERROR_NO_CLIENT_RUNNING,
SpeechRecognizer.ERROR_INVALID_PACKET,
SpeechRecognizer.ERROR_SECURITY,
SpeechRecognizer.ERROR_TIMEOUT,
SpeechRecognizer.ERROR_UNKOWN_EVENT,
SpeechRecognizer.ERROR_VERSION,
SpeechRecognizer.ERROR_CLIENTINFO,
SpeechRecognizer.ERROR_SERVER_POOL,
SpeechRecognizer.ERROR_SESSION_EXPIRED,
SpeechRecognizer.ERROR_SPEECH_SIZE_EXCEEDED,
SpeechRecognizer.ERROR_EXCEED_TIME_LIMIT,
SpeechRecognizer.ERROR_WRONG_SERVICE_TYPE,
SpeechRecognizer.ERROR_WRONG_LANGUAGE_TYPE,
SpeechRecognizer.ERROR_OPENAPI_AUTH,
SpeechRecognizer.ERROR_QUOTA_OVERFLOWvoid onEndPointDetectTypeSelected(SpeechConfig.EndPointDetectType epdType)
SpeechRecognizer#selectEPDTypeInHybrid(EndPointDetectType)가 호출됨으로써 결정됩니다.
유저가 직접 AUTO, MANUAL을 선택하는 경우가 여기에 해당됩니다. 이 함수가 정상적으로 동작했을 때에만 onEndPointDetectTypeSelected 콜백 함수가 호출됩니다.
SpeechRecognizer#selectEPDTypeInHybrid(EndPointDetectType)가 호출되지 않으면, 자동으로 결정됩니다.
이 경우에는 MANUAL로 결정됩니다.
epdType - 결정된 EPD 종류