Saya menggunakan perpustakaan ini untuk mengautentikasi dengan sensor biometrik seperti ID wajah atau pemindai sidik jari, tetapi saya ingin tahu cara mendeteksi apakah perangkat memiliki sensor atau tidak : react-native-fingerprint-scanner

Menurut dokumentasinya ada API bernama .isSensorAvailable() tapi saya tidak mengerti apa yang dikembalikan jika tidak ada sensor yang tersedia di perangkat.

0
user13290052 18 April 2020, 06:50

2 jawaban

Jawaban Terbaik

Anda dapat menggunakan .isSensorAvailable() API seperti contoh di bawah ini.

import FingerprintScanner from 'react-native-fingerprint-scanner'

    FingerprintScanner
                .isSensorAvailable()
                .then(() => {
                // Call the Fingerprint Scanner Method
                    FingerprintScanner
                        .authenticate({ description: 'Authenticate to access this' })
                        .then(() => {
                            // Method for Authentication
                            onAuthenticate()
                        })
                        // Call error method
                        .catch(error => onAuthenticationFailure(error))

                })
                 //Call the error method
                .catch(error => onAuthenticationFailure(error))
0
Allan Joseph 18 April 2020, 05:45

Impor ReactNativeBiometrics dari 'react-native-biometrics';

ReactNativeBiometrics.isSensorAvailable().then(resultObject => {
  const {available, biometryType} = resultObject;

  if (available && biometryType === ReactNativeBiometrics.TouchID) {
    console.log('TouchID is supported');

  } else if (available && biometryType === ReactNativeBiometrics.FaceID) {
    console.log('FaceID is supported');

  } else if (
    available &&
    biometryType === ReactNativeBiometrics.Biometrics
  ) {
    console.log('Biometrics is supported');
    try{
ReactNativeBiometrics.simplePrompt({
  promptMessage: 'Confirm fingerprint',
})
  .then(resultObject => {
    const {success} = resultObject;

    if (success) {
      console.log('successful biometrics provided');

    } else {
      console.log('user cancelled biometric prompt');
    }
  })
  .catch(() => {
    console.log('biometrics failed');
  });
}
catch(e){
  console.log("Device not Support Fingerprint")
}
  } else {
    console.log('Biometrics not supported');
  }
});
0
Antier Solutions 31 Maret 2021, 06:45