Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 845e86b6 authored by Ahaan Ugale's avatar Ahaan Ugale Committed by Android (Google) Code Review
Browse files

Merge "Fix HotwordDetectedResult phrase and extras." into sc-dev

parents 46e3d1a3 9ea331f0
Loading
Loading
Loading
Loading
+5 −4
Original line number Original line Diff line number Diff line
@@ -10418,9 +10418,10 @@ package android.service.voice {
    method public int describeContents();
    method public int describeContents();
    method public int getByteOffset();
    method public int getByteOffset();
    method public int getConfidenceLevel();
    method public int getConfidenceLevel();
    method @NonNull public android.os.Bundle getExtras();
    method @NonNull public android.os.PersistableBundle getExtras();
    method @Nullable public String getHotwordPhrase();
    method public int getHotwordPhraseId();
    method public static int getMaxBundleSize();
    method public static int getMaxBundleSize();
    method public static int getMaxHotwordPhraseId();
    method public static int getMaxScore();
    method public static int getMaxScore();
    method public int getPersonalizedScore();
    method public int getPersonalizedScore();
    method public int getScore();
    method public int getScore();
@@ -10434,8 +10435,8 @@ package android.service.voice {
    method @NonNull public android.service.voice.HotwordDetectedResult build();
    method @NonNull public android.service.voice.HotwordDetectedResult build();
    method @NonNull public android.service.voice.HotwordDetectedResult.Builder setByteOffset(int);
    method @NonNull public android.service.voice.HotwordDetectedResult.Builder setByteOffset(int);
    method @NonNull public android.service.voice.HotwordDetectedResult.Builder setConfidenceLevel(int);
    method @NonNull public android.service.voice.HotwordDetectedResult.Builder setConfidenceLevel(int);
    method @NonNull public android.service.voice.HotwordDetectedResult.Builder setExtras(@NonNull android.os.Bundle);
    method @NonNull public android.service.voice.HotwordDetectedResult.Builder setExtras(@NonNull android.os.PersistableBundle);
    method @NonNull public android.service.voice.HotwordDetectedResult.Builder setHotwordPhrase(@NonNull String);
    method @NonNull public android.service.voice.HotwordDetectedResult.Builder setHotwordPhraseId(int);
    method @NonNull public android.service.voice.HotwordDetectedResult.Builder setPersonalizedScore(int);
    method @NonNull public android.service.voice.HotwordDetectedResult.Builder setPersonalizedScore(int);
    method @NonNull public android.service.voice.HotwordDetectedResult.Builder setScore(int);
    method @NonNull public android.service.voice.HotwordDetectedResult.Builder setScore(int);
  }
  }
+54 −41
Original line number Original line Diff line number Diff line
@@ -21,8 +21,8 @@ import static android.service.voice.HotwordDetector.CONFIDENCE_LEVEL_NONE;
import android.annotation.NonNull;
import android.annotation.NonNull;
import android.annotation.Nullable;
import android.annotation.Nullable;
import android.annotation.SystemApi;
import android.annotation.SystemApi;
import android.os.Bundle;
import android.os.Parcelable;
import android.os.Parcelable;
import android.os.PersistableBundle;


import com.android.internal.util.DataClass;
import com.android.internal.util.DataClass;


@@ -92,16 +92,20 @@ public final class HotwordDetectedResult implements Parcelable {
    }
    }


    /**
    /**
     * Triggered phrase.
     * An ID representing the keyphrase that triggered the successful detection.
     *
     *
     * <p>This phrase has to be listed in the AndroidManifest of the application in order for
     * <p>Only values between 0 and {@link #getMaxHotwordPhraseId()} (inclusive) are accepted.
     * trigger to be accepted by the system.
     */
     */
    // TODO(b/183128696): allow listing this in the manifest.
    private final int mHotwordPhraseId;
    @Nullable
    private static int defaultHotwordPhraseId() {
    private final String mHotwordPhrase;
        return 0;
    private static String defaultHotwordPhrase() {
    }
        return null;

    /**
     * Returns the maximum value of {@link #getHotwordPhraseId()}.
     */
    public static int getMaxHotwordPhraseId() {
        return 63;
    }
    }


    /**
    /**
@@ -115,11 +119,14 @@ public final class HotwordDetectedResult implements Parcelable {
     *
     *
     * <p>The use of this method is discouraged, and support for it will be removed in future
     * <p>The use of this method is discouraged, and support for it will be removed in future
     * versions of Android.
     * versions of Android.
     *
     * <p>This is a PersistableBundle so it doesn't allow any remotable objects or other contents
     * that can be used to communicate with other processes.
     */
     */
    @NonNull
    @NonNull
    private final Bundle mExtras;
    private final PersistableBundle mExtras;
    private static Bundle defaultExtras() {
    private static PersistableBundle defaultExtras() {
        return new Bundle();
        return new PersistableBundle();
    }
    }


    /**
    /**
@@ -136,7 +143,7 @@ public final class HotwordDetectedResult implements Parcelable {






    // Code below generated by codegen v1.0.22.
    // Code below generated by codegen v1.0.23.
    //
    //
    // DO NOT MODIFY!
    // DO NOT MODIFY!
    // CHECKSTYLE:OFF Generated code
    // CHECKSTYLE:OFF Generated code
@@ -155,15 +162,15 @@ public final class HotwordDetectedResult implements Parcelable {
            int byteOffset,
            int byteOffset,
            int score,
            int score,
            int personalizedScore,
            int personalizedScore,
            @Nullable String hotwordPhrase,
            int hotwordPhraseId,
            @NonNull Bundle extras) {
            @NonNull PersistableBundle extras) {
        this.mConfidenceLevel = confidenceLevel;
        this.mConfidenceLevel = confidenceLevel;
        com.android.internal.util.AnnotationValidations.validate(
        com.android.internal.util.AnnotationValidations.validate(
                HotwordDetector.HotwordConfidenceLevelValue.class, null, mConfidenceLevel);
                HotwordDetector.HotwordConfidenceLevelValue.class, null, mConfidenceLevel);
        this.mByteOffset = byteOffset;
        this.mByteOffset = byteOffset;
        this.mScore = score;
        this.mScore = score;
        this.mPersonalizedScore = personalizedScore;
        this.mPersonalizedScore = personalizedScore;
        this.mHotwordPhrase = hotwordPhrase;
        this.mHotwordPhraseId = hotwordPhraseId;
        this.mExtras = extras;
        this.mExtras = extras;
        com.android.internal.util.AnnotationValidations.validate(
        com.android.internal.util.AnnotationValidations.validate(
                NonNull.class, null, mExtras);
                NonNull.class, null, mExtras);
@@ -209,9 +216,14 @@ public final class HotwordDetectedResult implements Parcelable {
        return mPersonalizedScore;
        return mPersonalizedScore;
    }
    }


    /**
     * An ID representing the keyphrase that triggered the successful detection.
     *
     * <p>Only values between 0 and {@link #getMaxHotwordPhraseId()} (inclusive) are accepted.
     */
    @DataClass.Generated.Member
    @DataClass.Generated.Member
    public @Nullable String getHotwordPhrase() {
    public int getHotwordPhraseId() {
        return mHotwordPhrase;
        return mHotwordPhraseId;
    }
    }


    /**
    /**
@@ -227,7 +239,7 @@ public final class HotwordDetectedResult implements Parcelable {
     * versions of Android.
     * versions of Android.
     */
     */
    @DataClass.Generated.Member
    @DataClass.Generated.Member
    public @NonNull Bundle getExtras() {
    public @NonNull PersistableBundle getExtras() {
        return mExtras;
        return mExtras;
    }
    }


@@ -242,7 +254,7 @@ public final class HotwordDetectedResult implements Parcelable {
                "byteOffset = " + mByteOffset + ", " +
                "byteOffset = " + mByteOffset + ", " +
                "score = " + mScore + ", " +
                "score = " + mScore + ", " +
                "personalizedScore = " + mPersonalizedScore + ", " +
                "personalizedScore = " + mPersonalizedScore + ", " +
                "hotwordPhrase = " + mHotwordPhrase + ", " +
                "hotwordPhraseId = " + mHotwordPhraseId + ", " +
                "extras = " + mExtras +
                "extras = " + mExtras +
        " }";
        " }";
    }
    }
@@ -264,7 +276,7 @@ public final class HotwordDetectedResult implements Parcelable {
                && mByteOffset == that.mByteOffset
                && mByteOffset == that.mByteOffset
                && mScore == that.mScore
                && mScore == that.mScore
                && mPersonalizedScore == that.mPersonalizedScore
                && mPersonalizedScore == that.mPersonalizedScore
                && java.util.Objects.equals(mHotwordPhrase, that.mHotwordPhrase)
                && mHotwordPhraseId == that.mHotwordPhraseId
                && java.util.Objects.equals(mExtras, that.mExtras);
                && java.util.Objects.equals(mExtras, that.mExtras);
    }
    }


@@ -279,7 +291,7 @@ public final class HotwordDetectedResult implements Parcelable {
        _hash = 31 * _hash + mByteOffset;
        _hash = 31 * _hash + mByteOffset;
        _hash = 31 * _hash + mScore;
        _hash = 31 * _hash + mScore;
        _hash = 31 * _hash + mPersonalizedScore;
        _hash = 31 * _hash + mPersonalizedScore;
        _hash = 31 * _hash + java.util.Objects.hashCode(mHotwordPhrase);
        _hash = 31 * _hash + mHotwordPhraseId;
        _hash = 31 * _hash + java.util.Objects.hashCode(mExtras);
        _hash = 31 * _hash + java.util.Objects.hashCode(mExtras);
        return _hash;
        return _hash;
    }
    }
@@ -290,15 +302,12 @@ public final class HotwordDetectedResult implements Parcelable {
        // You can override field parcelling by defining methods like:
        // You can override field parcelling by defining methods like:
        // void parcelFieldName(Parcel dest, int flags) { ... }
        // void parcelFieldName(Parcel dest, int flags) { ... }


        byte flg = 0;
        if (mHotwordPhrase != null) flg |= 0x10;
        dest.writeByte(flg);
        dest.writeInt(mConfidenceLevel);
        dest.writeInt(mConfidenceLevel);
        dest.writeInt(mByteOffset);
        dest.writeInt(mByteOffset);
        dest.writeInt(mScore);
        dest.writeInt(mScore);
        dest.writeInt(mPersonalizedScore);
        dest.writeInt(mPersonalizedScore);
        if (mHotwordPhrase != null) dest.writeString(mHotwordPhrase);
        dest.writeInt(mHotwordPhraseId);
        dest.writeBundle(mExtras);
        dest.writeTypedObject(mExtras, flags);
    }
    }


    @Override
    @Override
@@ -312,13 +321,12 @@ public final class HotwordDetectedResult implements Parcelable {
        // You can override field unparcelling by defining methods like:
        // You can override field unparcelling by defining methods like:
        // static FieldType unparcelFieldName(Parcel in) { ... }
        // static FieldType unparcelFieldName(Parcel in) { ... }


        byte flg = in.readByte();
        int confidenceLevel = in.readInt();
        int confidenceLevel = in.readInt();
        int byteOffset = in.readInt();
        int byteOffset = in.readInt();
        int score = in.readInt();
        int score = in.readInt();
        int personalizedScore = in.readInt();
        int personalizedScore = in.readInt();
        String hotwordPhrase = (flg & 0x10) == 0 ? null : in.readString();
        int hotwordPhraseId = in.readInt();
        Bundle extras = in.readBundle();
        PersistableBundle extras = (PersistableBundle) in.readTypedObject(PersistableBundle.CREATOR);


        this.mConfidenceLevel = confidenceLevel;
        this.mConfidenceLevel = confidenceLevel;
        com.android.internal.util.AnnotationValidations.validate(
        com.android.internal.util.AnnotationValidations.validate(
@@ -326,7 +334,7 @@ public final class HotwordDetectedResult implements Parcelable {
        this.mByteOffset = byteOffset;
        this.mByteOffset = byteOffset;
        this.mScore = score;
        this.mScore = score;
        this.mPersonalizedScore = personalizedScore;
        this.mPersonalizedScore = personalizedScore;
        this.mHotwordPhrase = hotwordPhrase;
        this.mHotwordPhraseId = hotwordPhraseId;
        this.mExtras = extras;
        this.mExtras = extras;
        com.android.internal.util.AnnotationValidations.validate(
        com.android.internal.util.AnnotationValidations.validate(
                NonNull.class, null, mExtras);
                NonNull.class, null, mExtras);
@@ -359,8 +367,8 @@ public final class HotwordDetectedResult implements Parcelable {
        private int mByteOffset;
        private int mByteOffset;
        private int mScore;
        private int mScore;
        private int mPersonalizedScore;
        private int mPersonalizedScore;
        private @Nullable String mHotwordPhrase;
        private int mHotwordPhraseId;
        private @NonNull Bundle mExtras;
        private @NonNull PersistableBundle mExtras;


        private long mBuilderFieldsSet = 0L;
        private long mBuilderFieldsSet = 0L;


@@ -417,11 +425,16 @@ public final class HotwordDetectedResult implements Parcelable {
            return this;
            return this;
        }
        }


        /**
         * An ID representing the keyphrase that triggered the successful detection.
         *
         * <p>Only values between 0 and {@link #getMaxHotwordPhraseId()} (inclusive) are accepted.
         */
        @DataClass.Generated.Member
        @DataClass.Generated.Member
        public @NonNull Builder setHotwordPhrase(@NonNull String value) {
        public @NonNull Builder setHotwordPhraseId(int value) {
            checkNotUsed();
            checkNotUsed();
            mBuilderFieldsSet |= 0x10;
            mBuilderFieldsSet |= 0x10;
            mHotwordPhrase = value;
            mHotwordPhraseId = value;
            return this;
            return this;
        }
        }


@@ -438,7 +451,7 @@ public final class HotwordDetectedResult implements Parcelable {
         * versions of Android.
         * versions of Android.
         */
         */
        @DataClass.Generated.Member
        @DataClass.Generated.Member
        public @NonNull Builder setExtras(@NonNull Bundle value) {
        public @NonNull Builder setExtras(@NonNull PersistableBundle value) {
            checkNotUsed();
            checkNotUsed();
            mBuilderFieldsSet |= 0x20;
            mBuilderFieldsSet |= 0x20;
            mExtras = value;
            mExtras = value;
@@ -463,7 +476,7 @@ public final class HotwordDetectedResult implements Parcelable {
                mPersonalizedScore = defaultPersonalizedScore();
                mPersonalizedScore = defaultPersonalizedScore();
            }
            }
            if ((mBuilderFieldsSet & 0x10) == 0) {
            if ((mBuilderFieldsSet & 0x10) == 0) {
                mHotwordPhrase = defaultHotwordPhrase();
                mHotwordPhraseId = defaultHotwordPhraseId();
            }
            }
            if ((mBuilderFieldsSet & 0x20) == 0) {
            if ((mBuilderFieldsSet & 0x20) == 0) {
                mExtras = defaultExtras();
                mExtras = defaultExtras();
@@ -473,7 +486,7 @@ public final class HotwordDetectedResult implements Parcelable {
                    mByteOffset,
                    mByteOffset,
                    mScore,
                    mScore,
                    mPersonalizedScore,
                    mPersonalizedScore,
                    mHotwordPhrase,
                    mHotwordPhraseId,
                    mExtras);
                    mExtras);
            return o;
            return o;
        }
        }
@@ -487,10 +500,10 @@ public final class HotwordDetectedResult implements Parcelable {
    }
    }


    @DataClass.Generated(
    @DataClass.Generated(
            time = 1616110545582L,
            time = 1616965644404L,
            codegenVersion = "1.0.22",
            codegenVersion = "1.0.23",
            sourceFile = "frameworks/base/core/java/android/service/voice/HotwordDetectedResult.java",
            sourceFile = "frameworks/base/core/java/android/service/voice/HotwordDetectedResult.java",
            inputSignatures = "public static final  int BYTE_OFFSET_UNSET\nprivate final @android.service.voice.HotwordDetector.HotwordConfidenceLevelValue int mConfidenceLevel\nprivate final  int mByteOffset\nprivate final  int mScore\nprivate final  int mPersonalizedScore\nprivate final @android.annotation.Nullable java.lang.String mHotwordPhrase\nprivate final @android.annotation.NonNull android.os.Bundle mExtras\nprivate static  int defaultConfidenceLevel()\nprivate static  int defaultByteOffset()\nprivate static  int defaultScore()\nprivate static  int defaultPersonalizedScore()\npublic static  int getMaxScore()\nprivate static  java.lang.String defaultHotwordPhrase()\nprivate static  android.os.Bundle defaultExtras()\npublic static  int getMaxBundleSize()\nclass HotwordDetectedResult extends java.lang.Object implements [android.os.Parcelable]\n@com.android.internal.util.DataClass(genConstructor=false, genBuilder=true, genEqualsHashCode=true, genHiddenConstDefs=true, genParcelable=true, genToString=true)")
            inputSignatures = "public static final  int BYTE_OFFSET_UNSET\nprivate final @android.service.voice.HotwordDetector.HotwordConfidenceLevelValue int mConfidenceLevel\nprivate final  int mByteOffset\nprivate final  int mScore\nprivate final  int mPersonalizedScore\nprivate final  int mHotwordPhraseId\nprivate final @android.annotation.NonNull android.os.PersistableBundle mExtras\nprivate static  int defaultConfidenceLevel()\nprivate static  int defaultByteOffset()\nprivate static  int defaultScore()\nprivate static  int defaultPersonalizedScore()\npublic static  int getMaxScore()\nprivate static  int defaultHotwordPhraseId()\npublic static  int getMaxHotwordPhraseId()\nprivate static  android.os.PersistableBundle defaultExtras()\npublic static  int getMaxBundleSize()\nclass HotwordDetectedResult extends java.lang.Object implements [android.os.Parcelable]\n@com.android.internal.util.DataClass(genConstructor=false, genBuilder=true, genEqualsHashCode=true, genHiddenConstDefs=true, genParcelable=true, genToString=true)")
    @Deprecated
    @Deprecated
    private void __metadata() {}
    private void __metadata() {}