• Non classé
  • 0

RxTips – Empreinte digitale

Introduit avec Android Marshmallow, l’authentification via l’empreinte digitale accélère la connexion des utilisateurs à nos applications.

Son implémentation sans Rx est assez fastidieuse, il nous faut

  • demander la permission Manifest USE_FINGERPRINT
  • récupérer le FingerprintManager
  • demander la permission Runtime USE_FINGERPRINT
  • vérifier si l’appareil possède un dispositif de fingerprint
  • vérifier si l’appareil possède des emprunte en mémoire
  • lancer une authentification sur le FingerprintManager

Tout cela en une multitude d’allers retours entre pleins d’objets et de méthodes donc 😀

Avec RxFingerprint, c’est beaucoup plus simple

Ajoutez RxFingerprint et RxPermissions à votre fichier build.gradle

compile 'com.mtramin:rxfingerprint:2.1.0'
compile 'com.tbruyelle.rxpermissions2:rxpermissions:0.9.4@aar'

Ajoutez la permission USE_FINGERPRINT à votre AndroidManifest

<uses-permission android:name="android.permission.USE_FINGERPRINT" />

Coder !


//on demande la permission runtime
new RxPermissions(this)
                .request(Manifest.permission.USE_FINGERPRINT) 
           
                //on enchaine vers l'authentification fingerprint si la permission est accordée
                .flatMap(permitted -> RxFingerprint.authenticate(this))

                .subscribeOn(Schedulers.io())
                .observeOn(AndroidSchedulers.mainThread())

                .subscribe(fingerprintAuthenticationResult -> {
                        switch (fingerprintAuthenticationResult.getResult()) {
                            case FAILED:
                                //empreinte non reconnue
                                break;
                            case AUTHENTICATED:
                                //authentifié !!!
                                break;
                       }
                }, throwable ->
                        //permission non accordée 
                        //ou non authentifié via fingerprint
                );

Je vous invite à regarder le github de RxPermissions pour voir comment sécuriser des données via l’empreinte digitale, c’est assez simple à mettre en place, et surtout, sécurisé !!!

Un peu perdu en RxJava ? n’hésitez pas à aller faire un tour sur notre un article d’introduction sur RxJava , ainsi que celui détaillant l’utilisation des lambdas.

Petit rappel on vient de lancer une nouvelle rubrique sur le site, où vous pouvez découvrir des livres et des Goodies Android, allez-y faire un tour 😀

Vous aimerez aussi...

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Recevez un ebook GRATUIT !

Nous vous avons créé un ebook pour vous remercier de votre fidélité. Retrouvez les 10 librairies indispensables pour Android. Pour cela rien de plus simple vous avez juste à renseigner votre email, vous recevrez un mail de confirmation (pour que l'on vérifie que vous n'êtes pas un robot), il suffira de vous inscrire à la liste et vous recevrez l'Ebook quelques instant après (peut prendre un petit peu de temps car vous êtes beaucoup à le vouloir).
Votre adresse email
Secure and Spam free...