SpeechRecognizer: nie podłączony do usługi rozpoznawania

W mojej aplikacji używam bezpośrednio SpeechRecognizer. Niszczę SpeechRecognizer na Pause of the Activity i odtwarzam go w metodzie onResume jak poniżej ...

public class NoUISpeechActivity extends Activity {

protected static final String CLASS_TAG = "NoUISpeechActivity";
private SpeechRecognizer sr;


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

    sr = getSpeechRecognizer();
}

@Override
protected void onPause() {

    Log.i(CLASS_TAG, "on pause called");
    if(sr!=null){
        sr.stopListening();
        sr.cancel();
        sr.destroy();       

    }

    super.onPause();
}


@Override
protected void onResume() {

    Log.i(CLASS_TAG, "on resume called");       

    sr = getSpeechRecognizer();

    super.onResume();
}

....

private SpeechRecognizer getSpeechRecognizer() {
    if(sr == null){
        sr = SpeechRecognizer.createSpeechRecognizer(getApplicationContext());
        CustomRecognizerListner listner = new CustomRecognizerListner();
        listner.setOnListeningCallback(new OnListeningCallbackImp());
        sr.setRecognitionListener(listner);
    }
    return sr;
}
}

Gdy aplikacja jest instalowana po raz pierwszy za pomocą eclipse, wywoływana jest usługa SpeechRecognition, a rozpoznawanie odbywa się prawidłowo. Ale gdy aplikacja wraca z pauzy, gdy próbuję rozpoznać mowę, pojawia się błąd „SpeechRecognition: not connect to recognition service”

Co ja robię źle ?

questionAnswers(1)

yourAnswerToTheQuestion