나는 SpeechRecognizer Listner 활동을 연구 중이다.js 함수에서 SpeechRecognizer listner 응답을 얻는 방법?
나는 웹보기 버튼을 클릭에서 (startListning (의도)) 의도를 유발하고 자바 스크립트
act.startFun();
을 던졌다 그리고 startFun() 메소드가 내 MainActivity.java 파일에 선언
public void startFun(){
Log.d(TAG,"ONCLICK");
Intent intent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH);
intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_MODEL,RecognizerIntent.LANGUAGE_MODEL_FREE_FORM);
intent.putExtra(RecognizerIntent.EXTRA_CALLING_PACKAGE,"voice.recognition.test");
intent.putExtra(RecognizerIntent.EXTRA_MAX_RESULTS,5);
sr.startListening(intent);
}
및 내 SpeechRecognizer Listner는 다음과 같습니다
class listner implements RecognitionListener{
public void onResults(Bundle results) {
end=1;
Log.d(TAG, "onResults");
}
public void onRmsChanged(float rmsdB) {
Log.d(TAG, "onRmsChanged");
}
}
내 요구 사항은 통과하고 싶습니다. onResults (번들 결과)의 결과 문자열을 javascript 메서드에 전달합니다.
제발 좀 도와주세요.
조엘 덕분에. 이미 나는 이것을 알고있다. 내 게시물을 참조하십시오 코드 act.startFun()을 게시했습니다 - "행동"은 자바 스크립트 인터페이스입니다. – littledev
내 요구 사항은 var response = Interface.init()입니다. init은 speechRecognization을 호출 할 것이고 init() 메서드 자체에서 Speech Listner의 onResult() 메서드에 대한 응답이 필요합니다. – littledev
요구 사항이 이제 다소 불분명 해 보입니다. 그러나 자바 스크립트로 데이터를 보내는 유일한 방법은 반환하는 것입니다. 이러한 인터페이스 중 하나에서 기본 데이터 유형 (또는 문자열). loadUrl()을 사용하여 javascript 함수를 호출 할 수는 있지만 인수를 전달할 수는 없습니다. – Joel