Agregando autenticación con huellas digitales en Xamarin Forms

fingerprint
Share on facebook
Share on twitter
Share on linkedin

Agregar una autenticación de huella digital para proyectos multiplataforma nunca ha sido tan fácil como con el paquete de NuGet Plugin.Fingerprint.

Pero primero…

Algunas cosas para aclarar acerca de la autenticación biométrica o por huella digital. Estas son limitaciones de implementación por la tecnología en sí y no están introducidas de ninguna manera por la implementación de Xamarin Forms:

  1. No se puede guardar “la huella digital”. Hay dos razones para esto:
    • La lectura y detección de la huella se realiza dentro del hardware que lee la huella.
    • Por ley no se puede, no deberías y de todas formas, no se tiene acceso directo a esta información.
  2. Si tu dispositivo tiene más de una huella digital registrada, no se puede saber qué huella digital fue usada para la autenticación.
  3. Solo puede saber el hecho de que el sensor ha recibido o no una huella digital válida.

Ahora al evento principal

Para comenzar, debes incluir el paquete de NuGet Plugin.Fingerprint en todos los proyectos de la solución.

Ahora tienes que hacer un poco de configuración. No te asustes, solo son tres líneas para Android y un par de líneas para iOS.

En Android:

  • Solicita los permisios adecuados en tu AndroidManifest.xml
  • Configure la Actividad que ejecuta la aplicación para que el complemento pueda mostrar el cuadro de diálogo de solicitud cuando solicite la huella digital. En el repositorio del NuGet, usan el complemento CurrentActivity, pero me di cuenta de que puedes configurarlo dentro de MainActivity usando la palabra clave this

En iOS:

  • Debido a que este paquete funciona tanto para la autenticación facial como para la huella digital, de acuerdo con la documentación de iOS, debes agregar una entrada para NSFaceIDUsageDescription en el archivo info.plist. Si no agregas esta entrada, la librería simplemente no funcionará y tu aplicación podría fallar. Este registro describe para qué usará la identificación de la cara en caso de que use.

Una vez finalizada la configuración, debes llamar al método AuthenticateAsync. Debes pasar el texto que deseas que el usuario vea cuando le pidas que se autentique. El retorno de este método es un valor booleano que indica si la huella dactilar era de un usuario válido o si el usuario canceló el cuadro de diálogo. También devuelve un falso de inmediato si no hay huellas dactilares registradas.

Corriendo un ejemplo en un OnePlus 6

Contenido extra: configuración de sus emuladores y simuladores para la autenticación de huellas dactilares

En el simulador de iOS

  • Asegúrate de “inscribir” o “Enrolar” la identificación táctil o Touch ID.
  • Para enviar una identificación táctil válida o no válida, puedes usar las opciones del menú o los siguientes métodos abreviados de teclado respectivamente Shft+Cmd+M y Shift+Cmd+N
Inscribiendo el Touch ID en un simulador de iPhone 8 plus

En el emulador de Android:

  • Ve a las opciones del emulador y mira la sección de huellas digitales. Desde allí puedes acceder a un número fijo de huellas digitales ya disponible.
  • Procede a registrar cuantas huellas necesites en el dispositivo.
Buscando la sección de gestión de huellas dactilares.
Configurando la huella dactilar. Simplemente toque el botón “Tocar este sensor” en las opciones del emulador cada vez que se le solicite

Y eso es todo por ahora, espero que hayas encontrado el artículo útil. Creo que incluir esto dentro de Xamarin.Essentials sería muy conveniente. Por lo que he investigado, el equipo de Xamarin Essentials tiene planes de agregarlo, pero aún no lo han hecho, así que quizás sea una buena oportunidad para hacer algo al respecto… De todos modos, ojalá tengas un buen día y si te ha gustado este artículo, te aliento a compartirlo en las redes sociales o envíalo por fax a tu papá y a tu mamá, probablemente les encantará, confía en mí.

¿Te gustó el artículo o tienes algún comentario? Puedes darme mention en twitter @eatskolnikov

Comparte este post con tus amigos

Share on linkedin
Share on twitter
Share on facebook

¿quieres recibir los artículos en tu correo?

Suscribete a mi boletín de correos y enterate cuando haya una nueva publicación

Otros artículos

Enmanuel Toribio hablando sobre Xamarin en codecamsdq 2019
Eventos

La Experiencia CodecampSDQ

El sábado pasado, 1 de junio, tuve el privilegio de participar como miembro del personal y orador en el CodecampSDQ. Se llevó a cabo en las instalaciones de la Universidad INTEC aquí en Santo Domingo. Este evento ha estado ocurriendo durante muchos años y se ha convertido en una especie

Leer más »
Xamarin

Cambiando la etiqueta del botón Back en iOS con Xamarin Forms

Algo de contexto He estado trabajando en la aplicación para CodecampSDQ (iOS | Android) que se celebrará en las instalaciones de Intec este 1 de junio. El código se basa en este repositorio y hemos realizado algunas adaptaciones de las que probablemente hablaré con mayor detalle más adelante. En un momento me

Leer más »
Xamarin

Áreas seguras del Layout para iOS en Xamarin Forms

Desde el lanzamiento del iPhone X, hay un “notch” en la parte superior de la pantalla en los dispositivos iOS que tiende a ser molesto porque se sobrepone al contenido de nuestra aplicación. Normalmente tendrías que agregar algún tipo de margen para evitar este problema. El mayor inconveniente con este

Leer más »
From https://docs.microsoft.com/en-us/xamarin/xamarin-forms/user-interface/images?tabs=macos
Xamarin

Almacenamiento en caché de imágenes en Xamarin Forms

Alguien me preguntó sobre un problema que estaba teniendo al mostrar un ListView que tenía una imagen para cada celda. Cuando el usuario se movía por la lista, las imágenes parpadeaban y la interfaz de usuario se comportaba un poco lento. Las imágenes se estaban cargando desde internet. El problema

Leer más »
Xamarin

Agregando autenticación con huellas digitales en Xamarin Forms

Agregar una autenticación de huella digital para proyectos multiplataforma nunca ha sido tan fácil como con el paquete de NuGet Plugin.Fingerprint. Pero primero… Algunas cosas para aclarar acerca de la autenticación biométrica o por huella digital. Estas son limitaciones de implementación por la tecnología en sí y no están introducidas

Leer más »
Cinco Preguntas

Cinco preguntas sobre Startup Weekend

Del 10 al 12 de mayo del año en curso, seré voluntario como coach de tecnología en la próxima entrada de Startup Weekend Fintech, así que quise escribir un poco sobre el tema. ¿Qué es Startup Weekend Fintech? Startup Weekend es un evento, algo así como un hackathon, donde puedes

Leer más »