在我的应用程序中,我直接使用SpeechRecognizer。我破坏活动的SpeechRecognizer的onPause我重新创建它在下面的onResume方法...SpeechRecognizer:未连接到识别服务
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;
}
}
当应用程序被通过Eclipse首次安装时,语音识别服务被称为和认可情况properly.But时应用从暂停,如果我尝试识别语音我得到“语音识别:未连接到识别服务”错误
我在做什么错了?
不要你有问题汽车无检测的话呢?说一句你对听众有些结果吗? –
通过连续,你的意思是语音识别器不断运行背景? – JeeZ
是的。看起来在onResults方法被调用后,服务会自杀。 –