【问题标题】:Can we get face-id in react native for Android devices?我们可以在 Android 设备的原生反应中获得 face-id 吗?
【发布时间】:2019-11-10 17:45:16
【问题描述】:

我在我的应用中实施生物识别技术以进行身份​​验证。我正在为此使用 react-native 生物识别技术。每件事情都很好,只有一个卡住了。 Face-id 在 Android 中不起作用。我做了很多谷歌搜索,但找不到满意的答案。甚至可以在 Android 中使用 face-id 吗?

Biometrics.isSensorAvailable()
  .then((biometryType) => {
    if (biometryType === Biometrics.TouchID) {
      console.log('TouchID is supported')
    } else if (biometryType === Biometrics.FaceID) {
      console.log('FaceID is supported')
    } else {
      console.log('Biometrics not supported')
    }
  })  

即使我在手机中使用 FaceId,它也会始终返回 TouchId。 提前感谢您的帮助。

【问题讨论】:

  • 您找到解决方案了吗?您是否尝试过 Production Build?
  • 必须尝试使用​​npm install face-recognition-react-native --save npm?
  • @pravin 我知道它的回复很晚,但是如果你从设备中删除你的指纹,它会显示允许你使用人脸 ID,因为人脸 ID 在 android 10 中被视为弱生物特征

标签: android react-native face-id android-biometric-prompt


【解决方案1】:

我认为这是因为 Face-Id 和 Touch-Id 仅适用于 iOS。而且您似乎仍然可以让 Touch-Id 在 android 上作为 Biometrics 工作,默认为您用于锁定屏幕的内容(有时它也取决于您的设备制造商)我从 here 获得此信息

【讨论】:

    【解决方案2】:

    我的直接答案是 NO。这样做的理由是,Android 从未在 Stock 版本或核心 API 中提供过自己的 FaceID/Face 解锁功能。我们在 android 中获得的 Face ID/Face 解锁解决方案来自供应商,他们在核心 API 之上沉迷于 android 作为第三方集成,我认为没有人可以在数百种不同的实现之上编写接口来支持这样的来自单个 API 的功能。

    【讨论】:

      【解决方案3】:

      参考this answer

      react-native-touch-id 应该适用于 TouchID 和 FaceID。

      参考this documentation

      此包需要编译好的 SDK 版本 29 (Android 10.0) 或更高版本

      这可能表明它只能在 android 10 或更高版本上运行。

      【讨论】:

        【解决方案4】:

        使用 lib react-native-biometrics 支持 Android 的 touchid 和 faceid

        【讨论】:

        最近更新 更多