2015-09-11 52 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。