Loading core/api/system-current.txt +2 −3 Original line number Diff line number Diff line Loading @@ -10333,7 +10333,6 @@ package android.service.voice { method @RequiresPermission(allOf={android.Manifest.permission.RECORD_AUDIO, android.Manifest.permission.CAPTURE_AUDIO_HOTWORD}) public boolean stopRecognition(); field public static final int AUDIO_CAPABILITY_ECHO_CANCELLATION = 1; // 0x1 field public static final int AUDIO_CAPABILITY_NOISE_SUPPRESSION = 2; // 0x2 field public static final int HOTWORD_DETECTION_FALSE_ALERT = 0; // 0x0 field public static final int MODEL_PARAM_THRESHOLD_FACTOR = 0; // 0x0 field public static final int RECOGNITION_FLAG_ALLOW_MULTIPLE_TRIGGERS = 2; // 0x2 field public static final int RECOGNITION_FLAG_CAPTURE_TRIGGER_AUDIO = 1; // 0x1 Loading @@ -10356,7 +10355,7 @@ package android.service.voice { method public abstract void onError(); method public abstract void onRecognitionPaused(); method public abstract void onRecognitionResumed(); method public void onRejected(int); method public void onRejected(@Nullable android.service.voice.HotwordRejectedResult); } public static class AlwaysOnHotwordDetector.EventPayload { Loading Loading @@ -10405,7 +10404,7 @@ package android.service.voice { public static final class HotwordDetectionService.DspHotwordDetectionCallback { method public void onDetected(); method public void onRejected(); method public void onRejected(@Nullable android.service.voice.HotwordRejectedResult); } public interface HotwordDetector { core/java/android/service/voice/AlwaysOnHotwordDetector.java +10 −19 Original line number Diff line number Diff line Loading @@ -238,18 +238,6 @@ public class AlwaysOnHotwordDetector { }) public @interface ModelParams {} /** * Indicates that the given audio data is a false alert for {@link VoiceInteractionService}. */ public static final int HOTWORD_DETECTION_FALSE_ALERT = 0; /** @hide */ @Retention(RetentionPolicy.SOURCE) @IntDef(flag = true, prefix = { "HOTWORD_DETECTION_" }, value = { HOTWORD_DETECTION_FALSE_ALERT, }) public @interface HotwordDetectionResult {} /** * Controls the sensitivity threshold adjustment factor for a given model. * Negative value corresponds to less sensitive model (high threshold) and Loading Loading @@ -478,11 +466,14 @@ public class AlwaysOnHotwordDetector { public abstract void onRecognitionResumed(); /** * Called when the validated result is invalid. * Called when the {@link HotwordDetectionService second stage detection} did not detect the * keyphrase. * * @param reason The reason why the validated result is invalid. * @param result Info about the second stage detection result, provided by the * {@link HotwordDetectionService}. */ public void onRejected(@HotwordDetectionResult int reason) {} public void onRejected(@Nullable HotwordRejectedResult result) { } } /** Loading Loading @@ -1069,13 +1060,13 @@ public class AlwaysOnHotwordDetector { } @Override public void onRejected(int reason) { public void onRejected(HotwordRejectedResult result) { if (DBG) { Slog.d(TAG, "onRejected(" + reason + ")"); Slog.d(TAG, "onRejected(" + result + ")"); } else { Slog.i(TAG, "onRejected"); } Message.obtain(mHandler, MSG_HOTWORD_REJECTED, reason).sendToTarget(); Message.obtain(mHandler, MSG_HOTWORD_REJECTED, result).sendToTarget(); } @Override Loading Loading @@ -1124,7 +1115,7 @@ public class AlwaysOnHotwordDetector { mExternalCallback.onRecognitionResumed(); break; case MSG_HOTWORD_REJECTED: mExternalCallback.onRejected(msg.arg1); mExternalCallback.onRejected((HotwordRejectedResult) msg.obj); break; default: super.handleMessage(msg); Loading core/java/android/service/voice/HotwordDetectionService.java +6 −3 Original line number Diff line number Diff line Loading @@ -182,11 +182,14 @@ public abstract class HotwordDetectionService extends Service { } /** * Called when the detected result is invalid. * Informs the {@link AlwaysOnHotwordDetector} that the keyphrase was not detected. * * @param result Info about the second stage detection result. This is provided to * the {@link AlwaysOnHotwordDetector}. */ public void onRejected() { public void onRejected(@Nullable HotwordRejectedResult result) { try { mRemoteCallback.onRejected(); mRemoteCallback.onRejected(result); } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } Loading core/java/android/service/voice/IDspHotwordDetectionCallback.aidl +4 −2 Original line number Diff line number Diff line Loading @@ -16,6 +16,8 @@ package android.service.voice; import android.service.voice.HotwordRejectedResult; /** * Callback for returning the detected result from the HotwordDetectionService. * Loading @@ -28,7 +30,7 @@ oneway interface IDspHotwordDetectionCallback { void onDetected(); /** * Called when the detected result is invalid. * Sends {@code result} to the HotwordDetector. */ void onRejected(); void onRejected(in HotwordRejectedResult result); } core/java/com/android/internal/app/IHotwordRecognitionStatusCallback.aidl +6 −3 Original line number Diff line number Diff line Loading @@ -17,6 +17,7 @@ package com.android.internal.app; import android.hardware.soundtrigger.SoundTrigger; import android.service.voice.HotwordRejectedResult; /** * @hide Loading @@ -41,11 +42,13 @@ oneway interface IHotwordRecognitionStatusCallback { void onGenericSoundTriggerDetected(in SoundTrigger.GenericRecognitionEvent recognitionEvent); /** * Called when the validated result is invalid. * Called when the {@link HotwordDetectionService second stage detection} did not detect the * keyphrase. * * @param reason The reason why the validated result is invalid. * @param result Info about the second stage detection result, provided by the * {@link HotwordDetectionService}. */ void onRejected(int reason); void onRejected(in HotwordRejectedResult result); /** * Called when the detection fails due to an error. Loading Loading
core/api/system-current.txt +2 −3 Original line number Diff line number Diff line Loading @@ -10333,7 +10333,6 @@ package android.service.voice { method @RequiresPermission(allOf={android.Manifest.permission.RECORD_AUDIO, android.Manifest.permission.CAPTURE_AUDIO_HOTWORD}) public boolean stopRecognition(); field public static final int AUDIO_CAPABILITY_ECHO_CANCELLATION = 1; // 0x1 field public static final int AUDIO_CAPABILITY_NOISE_SUPPRESSION = 2; // 0x2 field public static final int HOTWORD_DETECTION_FALSE_ALERT = 0; // 0x0 field public static final int MODEL_PARAM_THRESHOLD_FACTOR = 0; // 0x0 field public static final int RECOGNITION_FLAG_ALLOW_MULTIPLE_TRIGGERS = 2; // 0x2 field public static final int RECOGNITION_FLAG_CAPTURE_TRIGGER_AUDIO = 1; // 0x1 Loading @@ -10356,7 +10355,7 @@ package android.service.voice { method public abstract void onError(); method public abstract void onRecognitionPaused(); method public abstract void onRecognitionResumed(); method public void onRejected(int); method public void onRejected(@Nullable android.service.voice.HotwordRejectedResult); } public static class AlwaysOnHotwordDetector.EventPayload { Loading Loading @@ -10405,7 +10404,7 @@ package android.service.voice { public static final class HotwordDetectionService.DspHotwordDetectionCallback { method public void onDetected(); method public void onRejected(); method public void onRejected(@Nullable android.service.voice.HotwordRejectedResult); } public interface HotwordDetector {
core/java/android/service/voice/AlwaysOnHotwordDetector.java +10 −19 Original line number Diff line number Diff line Loading @@ -238,18 +238,6 @@ public class AlwaysOnHotwordDetector { }) public @interface ModelParams {} /** * Indicates that the given audio data is a false alert for {@link VoiceInteractionService}. */ public static final int HOTWORD_DETECTION_FALSE_ALERT = 0; /** @hide */ @Retention(RetentionPolicy.SOURCE) @IntDef(flag = true, prefix = { "HOTWORD_DETECTION_" }, value = { HOTWORD_DETECTION_FALSE_ALERT, }) public @interface HotwordDetectionResult {} /** * Controls the sensitivity threshold adjustment factor for a given model. * Negative value corresponds to less sensitive model (high threshold) and Loading Loading @@ -478,11 +466,14 @@ public class AlwaysOnHotwordDetector { public abstract void onRecognitionResumed(); /** * Called when the validated result is invalid. * Called when the {@link HotwordDetectionService second stage detection} did not detect the * keyphrase. * * @param reason The reason why the validated result is invalid. * @param result Info about the second stage detection result, provided by the * {@link HotwordDetectionService}. */ public void onRejected(@HotwordDetectionResult int reason) {} public void onRejected(@Nullable HotwordRejectedResult result) { } } /** Loading Loading @@ -1069,13 +1060,13 @@ public class AlwaysOnHotwordDetector { } @Override public void onRejected(int reason) { public void onRejected(HotwordRejectedResult result) { if (DBG) { Slog.d(TAG, "onRejected(" + reason + ")"); Slog.d(TAG, "onRejected(" + result + ")"); } else { Slog.i(TAG, "onRejected"); } Message.obtain(mHandler, MSG_HOTWORD_REJECTED, reason).sendToTarget(); Message.obtain(mHandler, MSG_HOTWORD_REJECTED, result).sendToTarget(); } @Override Loading Loading @@ -1124,7 +1115,7 @@ public class AlwaysOnHotwordDetector { mExternalCallback.onRecognitionResumed(); break; case MSG_HOTWORD_REJECTED: mExternalCallback.onRejected(msg.arg1); mExternalCallback.onRejected((HotwordRejectedResult) msg.obj); break; default: super.handleMessage(msg); Loading
core/java/android/service/voice/HotwordDetectionService.java +6 −3 Original line number Diff line number Diff line Loading @@ -182,11 +182,14 @@ public abstract class HotwordDetectionService extends Service { } /** * Called when the detected result is invalid. * Informs the {@link AlwaysOnHotwordDetector} that the keyphrase was not detected. * * @param result Info about the second stage detection result. This is provided to * the {@link AlwaysOnHotwordDetector}. */ public void onRejected() { public void onRejected(@Nullable HotwordRejectedResult result) { try { mRemoteCallback.onRejected(); mRemoteCallback.onRejected(result); } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } Loading
core/java/android/service/voice/IDspHotwordDetectionCallback.aidl +4 −2 Original line number Diff line number Diff line Loading @@ -16,6 +16,8 @@ package android.service.voice; import android.service.voice.HotwordRejectedResult; /** * Callback for returning the detected result from the HotwordDetectionService. * Loading @@ -28,7 +30,7 @@ oneway interface IDspHotwordDetectionCallback { void onDetected(); /** * Called when the detected result is invalid. * Sends {@code result} to the HotwordDetector. */ void onRejected(); void onRejected(in HotwordRejectedResult result); }
core/java/com/android/internal/app/IHotwordRecognitionStatusCallback.aidl +6 −3 Original line number Diff line number Diff line Loading @@ -17,6 +17,7 @@ package com.android.internal.app; import android.hardware.soundtrigger.SoundTrigger; import android.service.voice.HotwordRejectedResult; /** * @hide Loading @@ -41,11 +42,13 @@ oneway interface IHotwordRecognitionStatusCallback { void onGenericSoundTriggerDetected(in SoundTrigger.GenericRecognitionEvent recognitionEvent); /** * Called when the validated result is invalid. * Called when the {@link HotwordDetectionService second stage detection} did not detect the * keyphrase. * * @param reason The reason why the validated result is invalid. * @param result Info about the second stage detection result, provided by the * {@link HotwordDetectionService}. */ void onRejected(int reason); void onRejected(in HotwordRejectedResult result); /** * Called when the detection fails due to an error. Loading