Upgrade from v5.x.x to v6.x.x

HYPR SDK for Android

Android X

Starting with HYPR Android SDK Version 6.0.0, the Android X Support Libraries are now required and replace the old deprecated Android Support Libraries. You must migrate your existing application to Android X using the Android Studio migration function.

  1. Click Refactor --> Migrate to Android X.... A popup gives you the option to start the migration.
890
  1. Click Migrate. The Refactoring Preview pane displays at the bottom with pending changes.
885
  1. Click Do Refactor to start the migration.

Update AARs and Gradle

HYPR Android SDK 6.0.0 dependencies require the delivered .aar files to be copied into the libs folder, and for the build.gradle file to be updated accordingly.

  1. Copy all HYPR SDK included .aar libraries into the libs folder:
433
  1. Modify the required dependency modifications in the app/build.gradle file:
dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'androidx.test.ext:junit:1.1.1'
    androidTestImplementation 'androidx.test.espresso:espresso-core:3.1.0'

    // Android
    implementation 'androidx.multidex:multidex:2.0.1'
    implementation 'androidx.appcompat:appcompat:1.1.0'
    implementation 'com.google.android.material:material:1.1.0'
    implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
    implementation 'androidx.lifecycle:lifecycle-extensions:2.2.0'
    annotationProcessor 'androidx.lifecycle:lifecycle-compiler:2.2.0'

    // GJON / POJO
    implementation 'com.google.code.gson:gson:2.8.5'
    implementation 'org.apache.commons:commons-lang3:3.5'

    // RxAndroid
    implementation group: 'io.reactivex.rxjava2', name: 'rxandroid', version: '2.0.2'
    implementation group: 'io.reactivex.rxjava2', name: 'rxjava', version: '2.1.12'
    implementation 'javax.annotation:jsr250-api:1.0'

    // Retrofit
    implementation 'com.squareup.retrofit2:retrofit:2.4.0'
    implementation 'com.squareup.retrofit2:converter-gson:2.4.0'
    implementation 'com.squareup.retrofit2:adapter-rxjava2:2.4.0'
    implementation 'com.squareup.okhttp3:logging-interceptor:3.9.0'

    // Out of Band Authentication
    implementation 'com.google.firebase:firebase-core:16.0.1'
    implementation 'com.google.firebase:firebase-messaging:17.1.0'
    implementation 'com.google.android.gms:play-services-vision:15.0.2'

    implementation(name: 'HyprCommon', version: "6.0.0", ext: 'aar')
    implementation(name: 'HyprBiometricPrompt', version: "6.0.0", ext: 'aar')
    implementation(name: 'HyprPin', version: "6.0.0", ext: 'aar')
    implementation(name: 'HyprFaceVoice', version: "6.0.0", ext: 'aar')
    implementation(name: 'HyprSilent', version: "6.0.0", ext: 'aar')
    implementation(name: 'HyprPresence', version: "6.0.0", ext: 'aar')

    // Fingerprint
    implementation 'androidx.biometric:biometric:1.0.1'

    // Sensory SMMA
    implementation(name: 'vvutils', version: "4.1.2.4", ext: 'aar')
    implementation(name: 'datautils', version: "4.1.2.4", ext: 'aar')
    implementation(name: 'smma', version: "4.1.2", classifier: 'android', ext: 'aar')
    implementation(name: 'model', version: "2.1.0", classifier: 'combiner', ext: 'aar')
    implementation(name: 'model', version: "2.1.0", classifier: 'face-pnn', ext: 'aar')
    implementation(name: 'model', version: "2.1.0", classifier: 'voice-tssv-udp_enUS', ext: 'aar')

    // These dependencies are required by Sensory SDK
    implementation 'com.parse.bolts:bolts-android:1.1.4'
    implementation 'org.slf4j:slf4j-api:1.7.25'
    implementation 'commons-io:commons-io:2.5'
    implementation 'com.fasterxml.uuid:java-uuid-generator:3.1.4'

    // HYPR Crypto
    implementation(name: "crypto", version: "2.6.0", ext: 'aar') {
        transitive = true
    }
}

SDK Interface Changes

Most SDK interfaces now require a context to be passed into the methods. Please refer to the HyprDbAdapter document for method signatures.