更新记录

1.0.0(2026-03-17)

  • 当前设备生物识别状态展示
  • 仅生物识别 / 生物识别或设备密码模式切换
  • 登录解锁
  • 支付确认
  • 查看敏感信息
  • 删除前确认
  • 取消认证

平台兼容性

uni-app(4.75)

Vue2 Vue3 Chrome Safari app-vue app-nvue Android iOS 鸿蒙
× × × ×
微信小程序 支付宝小程序 抖音小程序 百度小程序 快手小程序 京东小程序 鸿蒙元服务 QQ小程序 飞书小程序 小红书小程序 快应用-华为 快应用-联盟
× × × × × × × × × × × ×

uni-app x(4.75)

Chrome Safari Android iOS 鸿蒙 微信小程序
× × ×

点击“试用插件”即可直接体验生物识别认证模板页

试用页面就是插件同级目录下的 index.vue

页面里已经包含:

  • 设备状态检查
  • 人脸 / 指纹 / 密码兜底按钮
  • 常见认证场景
  • 最近一次认证结果

功能特性

  • 支持 Android / iOS 统一调用生物识别认证
  • 支持查询当前设备是否支持、是否已录入、是否可立即认证
  • 支持 biometricOnly
  • 支持 biometricOrDeviceCredential
  • 支持取消当前认证
  • 附带完整模板页,方便直接试用

适用场景

  • 登录解锁
  • 支付确认
  • 敏感信息查看
  • 危险操作二次确认

安装

uni_modules/austin-biometric-auth 复制到项目的 uni_modules 目录下。

权限说明

Android

  • android.permission.USE_BIOMETRIC
  • android.permission.USE_FINGERPRINT

iOS

  • NSFaceIDUsageDescription

修改这些原生配置后,需要重新编译并重新安装 App / 自定义基座。

API

方法

方法名 说明
getBiometricStatus() 获取当前设备生物识别状态
authenticate(options) 发起生物识别认证
cancelAuthentication() 取消当前认证

authenticate(options) 参数

参数名 类型 是否必填 说明
reason string 认证原因说明
mode string biometricOnlybiometricOrDeviceCredential
title string 认证标题
subtitle string 认证副标题
promptDescription string 补充说明
cancelText string 取消按钮文案
fallbackTitle string iOS 回退文案
confirmationRequired boolean Android 是否需要确认
success (res:any)=>void 成功回调
fail (res:any)=>void 失败回调
complete (res:any)=>void 完成回调

返回值字段

getBiometricStatus() 返回字段

字段 类型 说明
supported boolean 设备是否支持生物识别
enrolled boolean 是否已录入可用信息
available boolean 当前是否可立即认证
biometryType string 当前识别类型,如 faceIdtouchIdfingerprintnone
platform string 平台,androidios
deviceCredentialSupported boolean 是否支持设备密码兜底
faceIdPermissionDeclared boolean iOS 是否声明了 Face ID 用途说明
errCode number 错误码,成功时一般为 0
errMsg string 错误信息
note string 当前状态说明

authenticate(options) 返回字段

字段 类型 说明
ok boolean 是否认证成功
platform string 平台,androidios
authType string 实际认证模式
fallbackUsed boolean 是否走了回退逻辑
errCode number 错误码,成功时一般为 0
errMsg string 错误信息
note string 当前结果说明

使用示例

<script>
import { getBiometricStatus, authenticate } from '@/uni_modules/austin-biometric-auth'

export default {
  methods: {
    checkStatus() {
      const status = getBiometricStatus()
      console.log('biometric status', status)
    },

    runAuth() {
      authenticate({
        reason: '请验证身份后继续',
        mode: 'biometricOrDeviceCredential',
        success(res) {
          console.log('认证成功', res)
        },
        fail(err) {
          console.log('认证失败', err)
        },
      })
    },
  },
}
</script>

试用方法

  1. 点击“试用插件”
  2. 先看设备状态是否支持、是否已录入
  3. 选择认证方式
  4. 点击常见场景按钮发起认证
  5. 查看最近一次认证结果

注意事项

  • 页面层不需要自己判断 Android / iOS,直接调用同一套方法即可。
  • Android 端最终是人脸还是指纹,很多时候由系统和 ROM 决定。
  • iOS 上“密码兜底”通常会先尝试 Face ID / Touch ID,再回退设备密码。

隐私、权限声明

1. 本插件需要申请的系统权限列表:

## 宿主配置 - Android: - `android.permission.USE_BIOMETRIC` - `android.permission.USE_FINGERPRINT` - iOS: - `NSFaceIDUsageDescription`

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

暂无用户评论。