FORUMS PROFESSIONNELS
WINDEV
,
WEBDEV
et
WINDEV Mobile
Accueil
|
Messages récents
|
Connexion
|
Déconnexion
|
Français
Accueil
→
WINDEV Mobile 2024
→
Savoir si authentification biométrique est disponible
Savoir si authentification biométrique est disponible
Débuté par Matthieu, 29 jan. 2019 14:01 - 6 réponses
Connectez-vous…
Matthieu
#1
Posté le 29 janvier 2019 - 14:01
Bonjour,
J'utilise VérifieIdentitéUtilisateur qui fonctionne très bien mais j'aimerais bien savoir avant si cette possibilité (face id ou touch id) existe sur le téléphone.
Une idée ?
Merci
Matthieu
Signaler
0
0
Jason
#2
Posté le 06 février 2019 - 11:49
Bonjour.
J'ai exactement la même interrogation cette semaine.
Je lançais automatiquement VérifieIdentitéUtilisateur à l'ouverture d'une fenêtre et j'ai des testeurs qui m'ont fait remonté un plantage de l'application car ils n'avaient pas de lecteur d'empreinte.
Signaler
0
0
François SCHAAL
#3
Membre enregistré
1 603 messages
Popularité : +64 (70 votes)
Posté le 07 février 2019 - 09:10
Bonjour
S'il ne s'agit pas d'une erreur fatale avec crash de l'appli, cela peut se traiter par une gestion d'erreurs.
--
Cordialement
François
Signaler
0
0
wddev
#4
Posté le 07 février 2019 - 10:57
Dans la callback de VérifieIdentitéUtilisateur il y a un code d'erreur qui indique si capteur d'empreinte n'est pas présent.
Signaler
0
0
Popoy
#5
Posté le 08 février 2019 - 11:01
Bonjour a tous,
Essayer cela :
SI PAS
EnModeTest
(
)
ALORS
s
Monboolen
est une chaîne
s
Monboolen
=
C
apteurempreinteDetect
(
)
Info
(
s
Monboolen
)
SINON
Info
(
"Cette fonctionnalité n'est disponible que sur l'appareil"
)
FIN
import java.util.List;
import android.app.Activity;
import android.content.Context;
import android.widget.Toast;
import android.content.SharedPreferences;
import android.app.KeyguardManager;
import android.content.pm.PackageManager;
import android.hardware.fingerprint.FingerprintManager;
import android.Manifest;
import android.os.Build;
import android.os.Bundle;
import android.security.keystore.KeyGenParameterSpec;
import android.security.keystore.KeyPermanentlyInvalidatedException;
import android.security.keystore.KeyProperties;
import android.support.v7.app.AppCompatActivity;
import android.support.v4.app.ActivityCompat;
import android.widget.TextView;
import java.io.IOException;
import java.security.InvalidAlgorithmParameterException;
import java.security.InvalidKeyException;
import java.security.KeyStore;
import java.security.KeyStoreException;
import java.security.NoSuchAlgorithmException;
import java.security.NoSuchProviderException;
import java.security.UnrecoverableKeyException;
import java.security.cert.CertificateException;
import javax.crypto.Cipher;
import javax.crypto.KeyGenerator;
import javax.crypto.NoSuchPaddingException;
import javax.crypto.SecretKey;
public static String CapteurempreinteDetect()
{
FingerprintManager fingerprintManager;
KeyguardManager keyguardManager;
//Récupération du context de l'application
Context ctx= getApplicationContext();
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) {
keyguardManager =
(KeyguardManager) ctx.getSystemService(ctx.KEYGUARD_SERVICE);
fingerprintManager =
(FingerprintManager) ctx.getSystemService(ctx.FINGERPRINT_SERVICE);
if (!fingerprintManager.isHardwareDetected()) {
return "Your device doesn't support fingerprint authentication";
}
if (ActivityCompat.checkSelfPermission(ctx, Manifest.permission.USE_FINGERPRINT) != PackageManager.PERMISSION_GRANTED) {
return "Please enable the fingerprint permission";
}
if (!fingerprintManager.hasEnrolledFingerprints()) {
return "No fingerprint configured. Please register at least one fingerprint in your device's Settings";
}
if (!keyguardManager.isKeyguardSecure()) {
return "Please enable lockscreen security in your device's Settings";
} else {
return "Vraie" ;
}
}
return "Faux";
}
Certains import peuvent ne pas être nécessaire.
Signaler
1
0
Popoy
#6
Posté le 08 février 2019 - 11:01
Bonjour a tous,
Essayer cela :
SI PAS
EnModeTest
(
)
ALORS
s
Monboolen
est une chaîne
s
Monboolen
=
C
apteurempreinteDetect
(
)
Info
(
s
Monboolen
)
SINON
Info
(
"Cette fonctionnalité n'est disponible que sur l'appareil"
)
FIN
import java.util.List;
import android.app.Activity;
import android.content.Context;
import android.widget.Toast;
import android.content.SharedPreferences;
import android.app.KeyguardManager;
import android.content.pm.PackageManager;
import android.hardware.fingerprint.FingerprintManager;
import android.Manifest;
import android.os.Build;
import android.os.Bundle;
import android.security.keystore.KeyGenParameterSpec;
import android.security.keystore.KeyPermanentlyInvalidatedException;
import android.security.keystore.KeyProperties;
import android.support.v7.app.AppCompatActivity;
import android.support.v4.app.ActivityCompat;
import android.widget.TextView;
import java.io.IOException;
import java.security.InvalidAlgorithmParameterException;
import java.security.InvalidKeyException;
import java.security.KeyStore;
import java.security.KeyStoreException;
import java.security.NoSuchAlgorithmException;
import java.security.NoSuchProviderException;
import java.security.UnrecoverableKeyException;
import java.security.cert.CertificateException;
import javax.crypto.Cipher;
import javax.crypto.KeyGenerator;
import javax.crypto.NoSuchPaddingException;
import javax.crypto.SecretKey;
public static String CapteurempreinteDetect()
{
FingerprintManager fingerprintManager;
KeyguardManager keyguardManager;
//Récupération du context de l'application
Context ctx= getApplicationContext();
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) {
keyguardManager =
(KeyguardManager) ctx.getSystemService(ctx.KEYGUARD_SERVICE);
fingerprintManager =
(FingerprintManager) ctx.getSystemService(ctx.FINGERPRINT_SERVICE);
if (!fingerprintManager.isHardwareDetected()) {
return "Your device doesn't support fingerprint authentication";
}
if (ActivityCompat.checkSelfPermission(ctx, Manifest.permission.USE_FINGERPRINT) != PackageManager.PERMISSION_GRANTED) {
return "Please enable the fingerprint permission";
}
if (!fingerprintManager.hasEnrolledFingerprints()) {
return "No fingerprint configured. Please register at least one fingerprint in your device's Settings";
}
if (!keyguardManager.isKeyguardSecure()) {
return "Please enable lockscreen security in your device's Settings";
} else {
return "Vraie" ;
}
}
return "Faux";
}
Certains import peuvent ne pas être nécessaire.
Signaler
1
0
Matthieu
#7
Posté le 05 mars 2019 - 18:42
Merci Popoy, je vais essayer.
Ca ne concerne qu'Android et que le lecteur d'empreinte, je suis aussi intéressé par Face Id sur iPhone.
J'ai fais une requête au support technique, ils m'ont répondu que ce n'était pas implémenté mais qu'ils le notaient comme suggestion
Signaler
0
0
→ Revenir à WINDEV Mobile 2024
WINDEV 2024
WEBDEV 2024
WINDEV Mobile 2024
WINDEV (précédentes versions)
WEBDEV (précédentes versions)
WINDEV Mobile (précédentes versions)
Etats & Requêtes
Hors-sujet
Outils
Français
English
Español
Portuguesa
Fermer cette fenêtre
Type de recherche
Uniquement les sujets
Tous les messages
Période de recherche
Date indifférente
Moins d'une heure
Moins de 24 heures
Moins d'une semaine
Moins d'un mois
Moins d'un an
Annuler
Aperçu de votre message
Ajouter une image
Importer une image depuis une URL
Envoyer une image depuis un fichier de votre disque
Déposez ici un fichier ou cliquez sur "Parcourir..."
ou
Annuler
0%
WLangage
SQL
XML, HTML
JAVA, Javascript
Texte