0

사용자가 명령을 말할 수 있고 실행될 수있는 앱을 개발 중입니다. Google의 '음성 검색'앱과 같습니다. 음성 검색과 관련된 일련의 명령을 사용하고 싶습니다. 일부 버튼RecognizerIntent.ACTION_RECOGNIZE_SPEECH을 사용하는 Google 음성 검색이 동작을 수행하지 않습니다.

@Override 
public void startVoiceRecognitionActivity() { 
    // TODO Auto-generated method stub 
    Intent intent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH); 
    intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_MODEL, 
      RecognizerIntent.LANGUAGE_MODEL_WEB_SEARCH); 
    intent.putExtra(RecognizerIntent.EXTRA_PROMPT, "Command me"); 
    startActivityForResult(intent, REQUEST_CODE); 
} 


@Override 
public void onActivityResult(int requestCode, int resultCode, Intent data) { 
     super.onActivityResult(requestCode, resultCode, data); 
     switch (requestCode) { 
     case REQUEST_CODE: { 
      ArrayList<String> matches = data 
        .getStringArrayListExtra(RecognizerIntent.EXTRA_RESULTS); 
      ApplicationDebug.printlog("got inside onactivityresult"); 
      String spokenText = matches.get(0); 
      Toast.makeText(getApplicationContext(), spokenText, 
        Toast.LENGTH_LONG).show(); 
      // super.onActivityResult(requestCode, resultCode, data); 
      break; 
     } 
    } 
} 

내가 startVoiceRecognitionActivity()를 호출하고 클릭하여 다음과 같이

내 코드입니다.

음성을 올바르게 감지하고 있지만 여기서는 아무런 조치도 취하지 않았습니다. 정확히 말하면 "Open Calculator"라고 말하면 텍스트가 올바르게 표시되지만 계산기 앱은 열리지 않습니다. 당신이 찾고있는 것처럼

+1

. 즉,'spokenText'가'열린 계산기 '와 같을 때 계산기 앱을 엽니 다. 음성 인식은 음성에서 텍스트로의 변환 일 뿐이며,이를 해석하지 않고 그 해석을 바탕으로 어떤 조치도 수행하지 않습니다. 답장을 보내 주셔서 감사합니다. –

+0

Google 음성 검색 앱에서 직접 사용할 수있는 API가 있으므로 사용중인 작업을 얻을 수 있습니다. –

+2

나는 확실히 말할 수 없다. 그러나 나는 정말로 그것을 의심한다. 감사합니다 @AlexisPigeon. –

답변

0

는 소리 :

RecognizerIntent.ACTION_VOICE_SEARCH_HANDS_FREE 당신은 당신의 자신의 일치하는 논리를 개발해야합니다