2015-09-11 2 views
-2

Меня интересует распознавание речи в Android, но я не могу этого сделать: она не непрерывна. Если вы перестанете говорить, это не будет продолжаться, и вам нужно снова нажать кнопку.Речь только в первый раз

Я не хочу это поведение ..

Кто-нибудь есть какие-либо предложения относительно того, что я могу это исправить?

Признать речь только в первый раз. Я не хочу этого поведения.

Вот код:

private SpeechRecognizer speech; 

    @Override 
    public void onCreate(Bundle savedInstanceState) 
    { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 

    speech = SpeechRecognizer.createSpeechRecognizer(this); 
    speech.setRecognitionListener(this); 

    Intent intent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH); 
    intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_PREFERENCE, "en"); 
    intent.putExtra(RecognizerIntent.EXTRA_CALLING_PACKAGE, 
    this.getPackageName()); 

    speech.startListening(intent); 
    } 

    @Override 
    public void onBeginningOfSpeech() 
    { 
    } 

     @Override 
     public void onBufferReceived(byte[] arg0) 
     { 
     } 

     @Override 
     public void onEndOfSpeech() 
      { 
      } 

     @Override 
     public void onError(int e) 
      { 
      } 

     @Override 
     public void onEvent(int arg0, Bundle arg1) 
     { 
     } 

     @Override 
     public void onPartialResults(Bundle arg0) 
     { 
     } 


      public void onReadyForSpeech(Bundle arg0) 
     { 
      } 

     @Override 
     public void onResults(Bundle data) 
     { 
      ArrayList<String> matches = data.getStringArrayList(
      SpeechRecognizer.RESULTS_RECOGNITION); 


      } 

      @Override 
      public void onRmsChanged(float arg0) 
      { 
      } 

ответ

0

Попробуйте позвонить еще раз

speech.startListening(intent); 

внутри О результатах и ​​OnError.

Смежные вопросы