diff --git a/services/voiceinteraction/java/com/android/server/voiceinteraction/HotwordDetectionConnection.java b/services/voiceinteraction/java/com/android/server/voiceinteraction/HotwordDetectionConnection.java index 665d5e7604253..dfa6f8637846a 100644 --- a/services/voiceinteraction/java/com/android/server/voiceinteraction/HotwordDetectionConnection.java +++ b/services/voiceinteraction/java/com/android/server/voiceinteraction/HotwordDetectionConnection.java @@ -432,9 +432,15 @@ final class HotwordDetectionConnection { mLastRestartInstant = Instant.now(); // Recreate connection to reset the cache. - mRemoteHotwordDetectionService = mHotwordDetectionServiceConnectionFactory.createLocked(); - mRemoteVisualQueryDetectionService = - mVisualQueryDetectionServiceConnectionFactory.createLocked(); + if (oldHotwordConnection != null) { + mRemoteHotwordDetectionService = + mHotwordDetectionServiceConnectionFactory.createLocked(); + } + + if (oldVisualQueryDetectionConnection != null) { + mRemoteVisualQueryDetectionService = + mVisualQueryDetectionServiceConnectionFactory.createLocked(); + } Slog.v(TAG, "Started the new process, dispatching processRestarted to detector"); runForEachDetectorSessionLocked((session) -> {