UI Biometría Facial - ReconoSERID/SDK-ReconoSERID-Android GitHub Wiki

Interfaz gráfica para los servicios de Biometría Facial.

Biometría Facial

Valida que haya un rostro humano y realice movimientos aleatorios (sonria, parpadear, gire a la derecha o a la izquierda)

Dependiendo del tipo de convenio ciertos parametros son obligatorios enviar en el intent

  • Para tipo 0:

     1.  Se debe enviar como llave "guid_ciudadano" acompañado del guidCiudadano
    
  • Para tipo 3:

     1.  Se debe enviar como llave "type_document" acompañado del tipo de documento
    
     2.  Se debe enviar como llave "num_document" acompañado del número documento
    
#!java

static final int FACE = 3;

Intent intent = new Intent(this, LivePreviewActivity.class);
        intent.putExtra(IntentExtras.GUID_CIUDADANO, "xxxxx-xxxxx-xxxxx-xxxxx"); //Obligatorio para convenio 0
        intent.putExtra(IntentExtras.TYPE_DOCUMENT, "CC");        //Obligatorio para convenio 0 y 3 
        intent.putExtra(IntentExtras.NUM_DOCUMENT, "123456789");  //Obligatorio para convenio 0 y 3
        intent.putExtra(IntentExtras.SAVE_USER, "xxxx");     //Obligatorio para convenio
        intent.putExtra(IntentExtras.VALIDATE_FACE, false);  //Opcional, si se desea enviar en false    
        intent.putExtra(IntentExtras.ACTIVATE_FLASH, false); //Activa el flash de la cámara (si lo tiene), por default esta apagado (false)
        intent.putExtra(IntentExtras.CHANGE_CAMERA, false);  //Cambia de la cámara delantera a la trasera, por default esta la cámara delantera activada
        intent.putExtra(IntentExtras.ADVISER, "Asesor Android"); //Obligatorio para convenio 0 y 3 
        intent.putExtra(IntentExtras.CAMPUS, "Sede Android");    //Obligatorio para convenio 0 y 3  
        intent.putExtra(IntentExtras.TIME, 5);    //Tiempo ejecución entre retos. Enviar el valor que se necesite, por defecto, esta 5 seg  
        startActivityForResult(intent, FACE); 
#!Kotlin

   const val FACE = 3

    val intent = Intent(this, LivePreviewActivity.class);
        intent.putExtra(IntentExtras.GUID_CIUDADANO, "xxxxx-xxxxx-xxxxx-xxxxx") //Obligatorio para convenio 0
        intent.putExtra(IntentExtras.TYPE_DOCUMENT, "CC")        //Obligatorio para convenio 0 y 3
        intent.putExtra(IntentExtras.NUM_DOCUMENT, "123456789")  //Obligatorio para convenio 0 y 3
        intent.putExtra(IntentExtras.SAVE_USER, "xxxx")     //Obligatorio para convenio   
        intent.putExtra(IntentExtras.VALIDATE_FACE, false)  //Opcional, si se desea enviar en false 
        intent.putExtra(IntentExtras.ACTIVATE_FLASH, false) //Activa el flash de la cámara (si lo tiene), por default esta apagado (false)
        intent.putExtra(IntentExtras.CHANGE_CAMERA, false)  //Cambia de la cámara delantera a la trasera, por default esta la cámara delantera activada
        intent.putExtra(IntentExtras.ADVISER, "Asesor Android") //Obligatorio para convenio 0 y 3 
        intent.putExtra(IntentExtras.CAMPUS, "Sede Android")    //Obligatorio para convenio 0 y 3 
        intent.putExtra(IntentExtras.TIME, 5);    //Tiempo ejecución entre retos. Enviar el valor que se necesite, por defecto, esta 5 seg  
        startActivityForResult(intent, FACE)

se devuelve en el onActivityResult

#!java

 protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
        super.onActivityResult(requestCode, resultCode, data);     
        if (requestCode == FACE){
            if (resultCode == RESULT_OK){               
                String pathFront = data.getStringExtra(IntentExtras.PATH_FILE_PHOTO_R);    //path foto tomada
                boo isValidateFace = data.getStringExtra(IntentExtras.VALIDATE_FACE); //si enviaste true en el intent IntentExtras.VALIDATE_FACE
            }else if (resultCode == IntentExtras.ERROR_INTENT){
                data.getStringExtra(IntentExtras.ERROR_MSG);             //mensaje de error
                data.getExtras().getParcelable(IntentExtras.ERROR_SDK);  //errores generados en el SDK
            }
        } 
    }
#!Kotlin

 override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
        super.onActivityResult(requestCode, resultCode, data)
        if (requestCode == FACE){
            if (resultCode == RESULT_OK){
                val isValidateFace: String? =  data.getStringExtra(IntentExtras.VALIDATE_FACE) //si enviaste true en el intent IntentExtras.VALIDATE_FACE
                val pathFace: String? = data.getStringExtra(IntentExtras.PATH_FILE_PHOTO_R)  //path de la imagen tomada
            } else if (resultCode == IntentExtras.ERROR_INTENT){
                data.extras!!.getStringExtra(IntentExtras.ERROR_MSG)!!      //mensaje de error
                data.extras!!.getParcelable(IntentExtras.ERROR_SDK)!!       //errores generados en el SDK
            }
        } 
    }

Para saber más sobre los errores de lectura que puede entregar el SDK en caso de error, verificar el siguiente enlace:

Códigos de Error

volver