音声認識柄を実行するAndroidサービスを適切にシャットダウンする方法は?

StackOverflow https://stackoverflow.com//questions/25007390

  •  20-12-2019
  •  | 
  •  
役に立ちましたか?

解決 2

アプリを起動するときにすでに聴いている認識士があるのはまだわかりません。ただし、OnError()での状態をテストし、認識機能をキャンセルし、リスニングの再起動を解除しました。

これは私が使用したコードです:

        @Override
    public void onError(int arg0) {
         String mError = "";
            switch (arg0) {
            case SpeechRecognizer.ERROR_NETWORK_TIMEOUT:                
                mError = " network timeout"; 
                break;
            case SpeechRecognizer.ERROR_NETWORK: 
                mError = " network" ;
                return;
            case SpeechRecognizer.ERROR_AUDIO: 
                mError = " audio"; 
                break;
            case SpeechRecognizer.ERROR_SERVER: 
                mError = " server"; 
                break;
            case SpeechRecognizer.ERROR_CLIENT: 
                mError = " client"; 
                break;
            case SpeechRecognizer.ERROR_SPEECH_TIMEOUT: 
                mError = " speech time out" ; 
                break;
            case SpeechRecognizer.ERROR_NO_MATCH: 
                mError = " no match" ; 
                break;
            case SpeechRecognizer.ERROR_RECOGNIZER_BUSY: 
                mError = " recogniser busy" ; 
                mSpeechRecognizer.cancel();
                break;
            case SpeechRecognizer.ERROR_INSUFFICIENT_PERMISSIONS: 
                mError = " insufficient permissions" ; 
                break;
            default:
                mError = "Unknown Error";
            }
            Log.i(TAG,  "Error: " +  arg0 + " - " + mError);
            mSpeechRecognizer.startListening(mSpeechRecognizerIntent);
    }
.

他のヒント

あなたのサービス/活動のondestroyにstopServiceを入れてみてください。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top