Search in sources :

Example 31 with KeyphraseSoundModel

use of android.hardware.soundtrigger.SoundTrigger.KeyphraseSoundModel in project android_frameworks_base by DirtyUnicorns.

the class SoundTriggerTest method testKeyphraseSoundModelParcelUnparcel_zeroKeyphrases.

@SmallTest
public void testKeyphraseSoundModelParcelUnparcel_zeroKeyphrases() throws Exception {
    byte[] data = new byte[10];
    mRandom.nextBytes(data);
    KeyphraseSoundModel ksm = new KeyphraseSoundModel(UUID.randomUUID(), UUID.randomUUID(), data, new Keyphrase[0]);
    // Write to a parcel
    Parcel parcel = Parcel.obtain();
    ksm.writeToParcel(parcel, 0);
    // Read from it
    parcel.setDataPosition(0);
    KeyphraseSoundModel unparceled = KeyphraseSoundModel.CREATOR.createFromParcel(parcel);
    // Verify that they are the same
    assertEquals(ksm.uuid, unparceled.uuid);
    assertEquals(ksm.type, unparceled.type);
    assertTrue(Arrays.equals(ksm.keyphrases, unparceled.keyphrases));
    assertTrue(Arrays.equals(ksm.data, unparceled.data));
}
Also used : KeyphraseSoundModel(android.hardware.soundtrigger.SoundTrigger.KeyphraseSoundModel) Parcel(android.os.Parcel) SmallTest(android.test.suitebuilder.annotation.SmallTest)

Example 32 with KeyphraseSoundModel

use of android.hardware.soundtrigger.SoundTrigger.KeyphraseSoundModel in project android_frameworks_base by DirtyUnicorns.

the class SoundTriggerTest method testKeyphraseSoundModelParcelUnparcel_zeroData.

@SmallTest
public void testKeyphraseSoundModelParcelUnparcel_zeroData() throws Exception {
    Keyphrase[] keyphrases = new Keyphrase[2];
    keyphrases[0] = new Keyphrase(1, 0, "en-US", "hello", new int[] { 0 });
    keyphrases[1] = new Keyphrase(2, 0, "fr-FR", "there", new int[] { 1, 2 });
    KeyphraseSoundModel ksm = new KeyphraseSoundModel(UUID.randomUUID(), UUID.randomUUID(), new byte[0], keyphrases);
    // Write to a parcel
    Parcel parcel = Parcel.obtain();
    ksm.writeToParcel(parcel, 0);
    // Read from it
    parcel.setDataPosition(0);
    KeyphraseSoundModel unparceled = KeyphraseSoundModel.CREATOR.createFromParcel(parcel);
    // Verify that they are the same
    assertEquals(ksm.uuid, unparceled.uuid);
    assertEquals(ksm.type, unparceled.type);
    assertTrue(Arrays.equals(ksm.keyphrases, unparceled.keyphrases));
    assertTrue(Arrays.equals(ksm.data, unparceled.data));
}
Also used : KeyphraseSoundModel(android.hardware.soundtrigger.SoundTrigger.KeyphraseSoundModel) Parcel(android.os.Parcel) Keyphrase(android.hardware.soundtrigger.SoundTrigger.Keyphrase) SmallTest(android.test.suitebuilder.annotation.SmallTest)

Example 33 with KeyphraseSoundModel

use of android.hardware.soundtrigger.SoundTrigger.KeyphraseSoundModel in project android_frameworks_base by ResurrectionRemix.

the class DatabaseHelper method deleteKeyphraseSoundModel.

/**
     * Deletes the sound model and associated keyphrases.
     */
public boolean deleteKeyphraseSoundModel(int keyphraseId, int userHandle, String bcp47Locale) {
    // Sanitize the locale to guard against SQL injection.
    bcp47Locale = Locale.forLanguageTag(bcp47Locale).toLanguageTag();
    synchronized (this) {
        KeyphraseSoundModel soundModel = getKeyphraseSoundModel(keyphraseId, userHandle, bcp47Locale);
        if (soundModel == null) {
            return false;
        }
        // Delete all sound models for the given keyphrase and specified user.
        SQLiteDatabase db = getWritableDatabase();
        String soundModelClause = SoundModelContract.KEY_MODEL_UUID + "='" + soundModel.uuid.toString() + "'";
        try {
            return db.delete(SoundModelContract.TABLE, soundModelClause, null) != 0;
        } finally {
            db.close();
        }
    }
}
Also used : KeyphraseSoundModel(android.hardware.soundtrigger.SoundTrigger.KeyphraseSoundModel) SQLiteDatabase(android.database.sqlite.SQLiteDatabase)

Example 34 with KeyphraseSoundModel

use of android.hardware.soundtrigger.SoundTrigger.KeyphraseSoundModel in project android_frameworks_base by ResurrectionRemix.

the class SoundTriggerTest method testKeyphraseSoundModelParcelUnparcel_noData.

@SmallTest
public void testKeyphraseSoundModelParcelUnparcel_noData() throws Exception {
    Keyphrase[] keyphrases = new Keyphrase[2];
    keyphrases[0] = new Keyphrase(1, 0, "en-US", "hello", new int[] { 0 });
    keyphrases[1] = new Keyphrase(2, 0, "fr-FR", "there", new int[] { 1, 2 });
    KeyphraseSoundModel ksm = new KeyphraseSoundModel(UUID.randomUUID(), UUID.randomUUID(), null, keyphrases);
    // Write to a parcel
    Parcel parcel = Parcel.obtain();
    ksm.writeToParcel(parcel, 0);
    // Read from it
    parcel.setDataPosition(0);
    KeyphraseSoundModel unparceled = KeyphraseSoundModel.CREATOR.createFromParcel(parcel);
    // Verify that they are the same
    assertEquals(ksm.uuid, unparceled.uuid);
    assertNull(unparceled.data);
    assertEquals(ksm.type, unparceled.type);
    assertTrue(Arrays.equals(keyphrases, unparceled.keyphrases));
}
Also used : KeyphraseSoundModel(android.hardware.soundtrigger.SoundTrigger.KeyphraseSoundModel) Parcel(android.os.Parcel) Keyphrase(android.hardware.soundtrigger.SoundTrigger.Keyphrase) SmallTest(android.test.suitebuilder.annotation.SmallTest)

Example 35 with KeyphraseSoundModel

use of android.hardware.soundtrigger.SoundTrigger.KeyphraseSoundModel in project android_frameworks_base by ResurrectionRemix.

the class TestEnrollmentActivity method onEnrollButtonClicked.

/**
     * Called when the user clicks the enroll button.
     * Performs a fresh enrollment.
     */
public void onEnrollButtonClicked(View v) {
    Keyphrase kp = new Keyphrase(KEYPHRASE_ID, RECOGNITION_MODES, BCP47_LOCALE, TEXT, new int[] { UserManager.get(this).getUserHandle() });
    UUID modelUuid = UUID.randomUUID();
    // Generate a fake model to push.
    byte[] data = new byte[1024];
    mRandom.nextBytes(data);
    KeyphraseSoundModel soundModel = new KeyphraseSoundModel(modelUuid, null, data, new Keyphrase[] { kp });
    boolean status = mEnrollmentUtil.addOrUpdateSoundModel(soundModel);
    if (status) {
        Toast.makeText(this, "Successfully enrolled, model UUID=" + modelUuid, Toast.LENGTH_SHORT).show();
    } else {
        Toast.makeText(this, "Failed to enroll!!!" + modelUuid, Toast.LENGTH_SHORT).show();
    }
}
Also used : KeyphraseSoundModel(android.hardware.soundtrigger.SoundTrigger.KeyphraseSoundModel) Keyphrase(android.hardware.soundtrigger.SoundTrigger.Keyphrase) UUID(java.util.UUID)

Aggregations

KeyphraseSoundModel (android.hardware.soundtrigger.SoundTrigger.KeyphraseSoundModel)40 Keyphrase (android.hardware.soundtrigger.SoundTrigger.Keyphrase)20 Parcel (android.os.Parcel)20 SmallTest (android.test.suitebuilder.annotation.SmallTest)16 SQLiteDatabase (android.database.sqlite.SQLiteDatabase)8 UUID (java.util.UUID)8 Cursor (android.database.Cursor)4 LargeTest (android.test.suitebuilder.annotation.LargeTest)4