diff options
author | Michael Dooley <mdooley@google.com> | 2018-12-21 07:05:01 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2018-12-21 07:05:01 +0000 |
commit | 91a94d76bfd6f00d690cee81b8c85cf26c5f9d03 (patch) | |
tree | 0cb8f601287c6a243f6c15e373f069133e599343 /services/voiceinteraction | |
parent | 7a01a914779b79b4b58fbe60abce62f4fab53fbf (diff) | |
parent | 23c625677d0677d936701dc7191a58c65184927f (diff) |
Merge "Fixing getModelState event processing"
Diffstat (limited to 'services/voiceinteraction')
-rw-r--r-- | services/voiceinteraction/java/com/android/server/soundtrigger/SoundTriggerHelper.java | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/services/voiceinteraction/java/com/android/server/soundtrigger/SoundTriggerHelper.java b/services/voiceinteraction/java/com/android/server/soundtrigger/SoundTriggerHelper.java index d6b40aecf52e..38efc743fe34 100644 --- a/services/voiceinteraction/java/com/android/server/soundtrigger/SoundTriggerHelper.java +++ b/services/voiceinteraction/java/com/android/server/soundtrigger/SoundTriggerHelper.java @@ -622,6 +622,7 @@ public class SoundTriggerHelper implements SoundTrigger.StatusListener { onRecognitionFailureLocked(); break; case SoundTrigger.RECOGNITION_STATUS_SUCCESS: + case SoundTrigger.RECOGNITION_STATUS_GET_STATE_RESPONSE: if (isKeyphraseRecognitionEvent(event)) { onKeyphraseRecognitionSuccessLocked((KeyphraseRecognitionEvent) event); } else { @@ -638,7 +639,8 @@ public class SoundTriggerHelper implements SoundTrigger.StatusListener { private void onGenericRecognitionSuccessLocked(GenericRecognitionEvent event) { MetricsLogger.count(mContext, "sth_generic_recognition_event", 1); - if (event.status != SoundTrigger.RECOGNITION_STATUS_SUCCESS) { + if (event.status != SoundTrigger.RECOGNITION_STATUS_SUCCESS + && event.status != SoundTrigger.RECOGNITION_STATUS_GET_STATE_RESPONSE) { return; } ModelData model = getModelDataForLocked(event.soundModelHandle); @@ -655,7 +657,9 @@ public class SoundTriggerHelper implements SoundTrigger.StatusListener { return; } - model.setStopped(); + if (event.status != SoundTrigger.RECOGNITION_STATUS_GET_STATE_RESPONSE) { + model.setStopped(); + } try { callback.onGenericSoundTriggerDetected((GenericRecognitionEvent) event); } catch (DeadObjectException e) { @@ -797,7 +801,10 @@ public class SoundTriggerHelper implements SoundTrigger.StatusListener { Slog.w(TAG, "Received onRecognition event without callback for keyphrase model."); return; } - modelData.setStopped(); + + if (event.status != SoundTrigger.RECOGNITION_STATUS_GET_STATE_RESPONSE) { + modelData.setStopped(); + } try { modelData.getCallback().onKeyphraseDetected((KeyphraseRecognitionEvent) event); |