diff options
2 files changed, 27 insertions, 0 deletions
diff --git a/services/voiceinteraction/java/com/android/server/voiceinteraction/DspTrustedHotwordDetectorSession.java b/services/voiceinteraction/java/com/android/server/voiceinteraction/DspTrustedHotwordDetectorSession.java index e358d6be7434..f9b5111f5348 100644 --- a/services/voiceinteraction/java/com/android/server/voiceinteraction/DspTrustedHotwordDetectorSession.java +++ b/services/voiceinteraction/java/com/android/server/voiceinteraction/DspTrustedHotwordDetectorSession.java @@ -16,6 +16,7 @@ package com.android.server.voiceinteraction; +import static com.android.internal.util.FrameworkStatsLog.HOTWORD_DETECTOR_EVENTS__EVENT__CALLBACK_ON_DETECTED_EXCEPTION; import static com.android.internal.util.FrameworkStatsLog.HOTWORD_DETECTOR_EVENTS__EVENT__CALLBACK_ON_ERROR_EXCEPTION; import static com.android.internal.util.FrameworkStatsLog.HOTWORD_DETECTOR_EVENTS__EVENT__CALLBACK_ON_PROCESS_RESTARTED_EXCEPTION; import static com.android.internal.util.FrameworkStatsLog.HOTWORD_DETECTOR_EVENTS__EVENT__CALLBACK_ON_REJECTED_EXCEPTION; @@ -139,6 +140,10 @@ final class DspTrustedHotwordDetectorSession extends DetectorSession { "Security exception occurs in #onDetected method.")); } catch (RemoteException e1) { notifyOnDetectorRemoteException(); + HotwordMetricsLogger.writeDetectorEvent( + HotwordDetector.DETECTOR_TYPE_TRUSTED_HOTWORD_DSP, + HOTWORD_DETECTOR_EVENTS__EVENT__CALLBACK_ON_ERROR_EXCEPTION, + mVoiceInteractionServiceUid); throw e1; } return; @@ -165,6 +170,10 @@ final class DspTrustedHotwordDetectorSession extends DetectorSession { + " bits from hotword trusted process"); } catch (RemoteException e) { notifyOnDetectorRemoteException(); + HotwordMetricsLogger.writeDetectorEvent( + HotwordDetector.DETECTOR_TYPE_TRUSTED_HOTWORD_DSP, + HOTWORD_DETECTOR_EVENTS__EVENT__CALLBACK_ON_DETECTED_EXCEPTION, + mVoiceInteractionServiceUid); throw e; } if (mDebugHotwordLogging) { @@ -202,6 +211,10 @@ final class DspTrustedHotwordDetectorSession extends DetectorSession { externalCallback.onRejected(result); } catch (RemoteException e) { notifyOnDetectorRemoteException(); + HotwordMetricsLogger.writeDetectorEvent( + HotwordDetector.DETECTOR_TYPE_TRUSTED_HOTWORD_DSP, + HOTWORD_DETECTOR_EVENTS__EVENT__CALLBACK_ON_REJECTED_EXCEPTION, + mVoiceInteractionServiceUid); throw e; } mLastHotwordRejectedResult = result; diff --git a/services/voiceinteraction/java/com/android/server/voiceinteraction/SoftwareTrustedHotwordDetectorSession.java b/services/voiceinteraction/java/com/android/server/voiceinteraction/SoftwareTrustedHotwordDetectorSession.java index 8934c3964b21..367fb8166b00 100644 --- a/services/voiceinteraction/java/com/android/server/voiceinteraction/SoftwareTrustedHotwordDetectorSession.java +++ b/services/voiceinteraction/java/com/android/server/voiceinteraction/SoftwareTrustedHotwordDetectorSession.java @@ -18,6 +18,8 @@ package com.android.server.voiceinteraction; import static android.service.voice.HotwordDetectionService.AUDIO_SOURCE_MICROPHONE; +import static com.android.internal.util.FrameworkStatsLog.HOTWORD_DETECTOR_EVENTS__EVENT__CALLBACK_ON_DETECTED_EXCEPTION; +import static com.android.internal.util.FrameworkStatsLog.HOTWORD_DETECTOR_EVENTS__EVENT__CALLBACK_ON_ERROR_EXCEPTION; import static com.android.internal.util.FrameworkStatsLog.HOTWORD_DETECTOR_EVENTS__EVENT__CALLBACK_ON_PROCESS_RESTARTED_EXCEPTION; import static com.android.internal.util.FrameworkStatsLog.HOTWORD_DETECTOR_EVENTS__EVENT__START_SOFTWARE_DETECTION; import static com.android.internal.util.FrameworkStatsLog.HOTWORD_DETECTOR_KEYPHRASE_TRIGGERED__RESULT__DETECTED; @@ -131,6 +133,10 @@ final class SoftwareTrustedHotwordDetectorSession extends DetectorSession { "Security exception occurs in #onDetected method.")); } catch (RemoteException e1) { notifyOnDetectorRemoteException(); + HotwordMetricsLogger.writeDetectorEvent( + HotwordDetector.DETECTOR_TYPE_TRUSTED_HOTWORD_SOFTWARE, + HOTWORD_DETECTOR_EVENTS__EVENT__CALLBACK_ON_ERROR_EXCEPTION, + mVoiceInteractionServiceUid); throw e1; } return; @@ -148,6 +154,10 @@ final class SoftwareTrustedHotwordDetectorSession extends DetectorSession { "Copy audio stream failure.")); } catch (RemoteException e1) { notifyOnDetectorRemoteException(); + HotwordMetricsLogger.writeDetectorEvent( + HotwordDetector.DETECTOR_TYPE_TRUSTED_HOTWORD_SOFTWARE, + HOTWORD_DETECTOR_EVENTS__EVENT__CALLBACK_ON_ERROR_EXCEPTION, + mVoiceInteractionServiceUid); throw e1; } return; @@ -156,6 +166,10 @@ final class SoftwareTrustedHotwordDetectorSession extends DetectorSession { mSoftwareCallback.onDetected(newResult, null, null); } catch (RemoteException e1) { notifyOnDetectorRemoteException(); + HotwordMetricsLogger.writeDetectorEvent( + HotwordDetector.DETECTOR_TYPE_TRUSTED_HOTWORD_SOFTWARE, + HOTWORD_DETECTOR_EVENTS__EVENT__CALLBACK_ON_DETECTED_EXCEPTION, + mVoiceInteractionServiceUid); throw e1; } Slog.i(TAG, "Egressed " + HotwordDetectedResult.getUsageSize(newResult) |