para - huella dactilar android studio
API de huellas dactilares para el teléfono android (4)
Soy nuevo en la autenticación de huellas digitales en los teléfonos inteligentes. Como sabemos, Samsung S5 actualmente admite el escáner de huellas dactilares. ¿Es posible desarrollar una aplicación personalizada que pueda usar el escáner para autenticar a un usuario? Solo necesito saber la identidad del usuario y si se ha autenticado correctamente. Mi aplicación puede tomarla desde allí e integrarla con el backend.
Encontré github.com/googlesamples/android-FingerprintDialog que demuestra cómo puede usar las huellas digitales registradas en su aplicación para autenticar al usuario antes de proceder con algunas acciones, como comprar un artículo.
Primero debe crear una clave simétrica en el Key Store de Android usando KeyGenerator que solo se puede usar después de que el usuario se haya autenticado con la huella digital y pasar un KeyGenParameterSpec .
Al establecer KeyGenParameterSpec.Builder.setUserAuthenticationRequired en true, puede permitir el uso de la clave solo después de que el usuario la autentifique, incluso cuando se autentica con la huella digital del usuario.
Luego comience a escuchar una huella digital en el sensor de FingerprintManager.authenticate llamando a FingerprintManager.authenticate con un Cipher inicializado con la clave simétrica creada. O, alternativamente, puede recurrir a la contraseña verificada del lado del servidor como autenticador.
Una vez que se verifica la FingerprintManager.AuthenticationCallback#onAuthenticationSucceeded() digital (o contraseña), se FingerprintManager.AuthenticationCallback#onAuthenticationSucceeded() devolución de llamada FingerprintManager.AuthenticationCallback#onAuthenticationSucceeded() .
Requiere SDK V23. AFAIK no es útil para Samsung S5, pero podría ayudar a otros a usar esta función.
Google ahora ha anunciado una API genérica de huellas digitales para Android que puede ser utilizada por cualquier aplicación personalizada para la autorización y no solo por las aplicaciones nativas de Google. ¡Parece que el futuro se está volviendo más brillante!
Tomado de la página de desarrolladores de Android enlazada a continuación:
"Para autenticar a los usuarios a través del escaneo de huellas digitales, obtenga una instancia de la nueva clase FingerprintManager
y llame al método authenticate()
".
Sin embargo, también debe incluir este permiso:
<uses-permission android:name="android.permission.USE_FINGERPRINT" />
Si desea obtener más información, visite esta URL y desplácese hasta Authentication
:
https://developer.android.com/about/versions/marshmallow/android-6.0.html#fingerprint-authentication
La vista previa de la API de huellas digitales para Android M se encuentra https://developer.android.com/about/versions/marshmallow/android-6.0.html#fingerprint-authentication con la github.com/googlesamples/android-FingerprintDialog . A partir de este escrito, la definición de compatibilidad de Android para Android M no ha sido publicada. Por lo tanto, si el sensor de huellas dactilares, el componente de hardware clave del marco de huellas dactilares, se deja como un requisito "DEBERÍA" (lo más probable es que sea cierto), entonces los OEM deciden si incorporan el sensor o no. Pero, dado que Android Pay está fuertemente vinculado al marco de la huella digital, esto puede hacer que los OEM incluyan el sensor de huellas digitales.
Samsung proporciona Pass API para registrar, solicitar y validar huellas digitales. Aquí está SAMSUNG FINGER PRINT API . Hay un programa de muestra también.