-3

アプリが音声を受信して​​送信する音声認識アプリを作成しようとしています。onEndOfSpeech メソッドを呼び出して 1 秒待ってから、音声認識インテント全体を最初からやり直してください。

public void onEndOfSpeech() {
    Log.d("Speech", "onEndOfSpeech");

         try {
            Thread.sleep(3000);
        } catch (InterruptedException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
            mSpeechRecognizer.startListening(mSpeechRecognizerIntent);
        }

これを正しく行っているかどうかわかりません。ありがとう!

4

2 に答える 2

1

こうあるべき

try {
     Thread.sleep(3000);
     mSpeechRecognizer.startListening(mSpeechRecognizerIntent);
} catch (InterruptedException e) {
     // it depends on your app logic what to do with InterruptedException, you can process it or rethrow or restore interrupted flag
}
于 2013-05-03T05:36:59.537 に答える
0

このコードを試してください

protected boolean _active = true;
// time to display the splash screen in ms
protected int _splashTime = 1000;
Thread splashThread = new Thread() {
@Override
public void run() {
try {
int waited = 0;
while(_active && (waited < _splashTime)) {
sleep(100);
if(_active) {
waited += 100;
}
}
} catch(InterruptedException e) {
  e.printStackTrace();
  mSpeechRecognizer.startListening(mSpeechRecognizerIntent);
} 
于 2013-05-03T05:40:01.283 に答える