The library returns a BioException object with 3 parameters:
BioException(val code: Int, val message: String, val error: Error)
- The first parameter is an integer error code
// LIB CODE ERRORS
const val INVALID_PARAM_CODE = 400
const val ERROR_CODE_RETRY_TIME_LIMIT = 407
const val ERROR_CODE_RETRY_FORWARD_LIMIT = 403
const val ERROR_FROM_SERVER_CODE = 500
const val ERROR_MATCHING_CODE = 501
const val ERROR_PIN_EXPIRED_CODE = 502
const val ERROR_REJECT_BY_USER_CODE = 503
const val ERROR_MAXIMUN_BIOMETRIC_FAIL_CODE = 504
const val ERROR_QR_CODE = 505
const val ERROR_CANCELED_FROM_SERVER_CODE = 506
const val ERROR_CANCELED_BY_REALM = 507
const val ERROR_CANCELED_BY_LICENSE = 508
const val ERROR_CANCELED_BY_REENROLLMENT = 401
const val ERROR_BLOCKED_BY_NO_BIOMETRIC = 509
const val BIOMETRIC_CHANGES_IN_DEVICE_CODE = 510
- The third parameter is a sealed class containing objects with the error types:
sealed class Error : Serializable {
object Server : Error()
object Network : Error()
object MatchUser: Error()
object BlockedByReenrollment: Error()
object BlockedByFilter : Error()
object BlockedByLicense : Error()
object BlockedByRealm : Error()
object InvalidQR : Error()
object ManyRetries : Error()
object InvalidParameterEmailAndPhone : Error()
object InvalidParameterEmail : Error()
object InvalidParameterPhone : Error()
object PinExpired : Error()
object PinError : Error()
object Token : Error()
object BiometricCancelled : Error()
object BiometricMaxRetries : Error()
object BlockedBynoBiometric : Error()
object SDKNotConfigured: Error()
object UserNotValidated: Error()
object FingerprintChanged: Error()
}
- These types of errors are spat out in our overwritten methods
override fun showErrorEnrollment(exception: BioException) {
Toast.makeText(this,exception.message,Toast.LENGTH_SHORT).show()
}