SearchActivity.java
안드로이드 TV Leanback Sample 리포지토리에서 커밋합니다.
mFragment = (SearchFragment) getFragmentManager()
.findFragmentById(R.id.search_fragment);
if (!USE_INTERNAL_SPEECH_RECOGNIZER) {
mSpeechRecognitionCallback = new SpeechRecognitionCallback() {
@Override
public void recognizeSpeech() {
if (DEBUG) Log.v(TAG, "recognizeSpeech");
// ACTION_RECOGNIZE_SPEECH
startActivityForResult(mFragment.getRecognizerIntent(), REQUEST_SPEECH);
}
};
mFragment.setSpeechRecognitionCallback(mSpeechRecognitionCallback);
}
SpeechRecognitionCallback이 설정되면 내부 SpeechRecognizer를 사용하는 대신 Android Leanback 지원 라이브러리를 통해 액티비티에서 음성 검색 작업을 처리할 수 있습니다. 그러면 앱에서 RecognizerIntent를 사용하여 음성 인식을 지원할 수 있습니다.
API 레벨 23을 대상으로 하는 Android TV 앱이 있다면, 앱을 업데이트하여 SpeechRecognitionCallback을 사용하고 매니페스트에서 RECORD_AUDIO 권한을 제거하십시오.