生物识别使用指导

← 返回生物识别组件参考 · 全部使用指导

生物识别使用指导

不可见组件:弹出系统的指纹或人脸验证框,确认是本机主人在操作。

常用于登录、查看隐私内容、付款或删除前的二次验证。验证界面、重试次数、失败锁定都由系统负责, 应用拿不到任何指纹或人脸数据,只知道验证是否通过。需要 Android 9 及以上。

快速上手

放一个生物识别、一个按钮、一个标签。点按钮验证,通过后显示隐私内容;本机不支持时提示改用密码:

各案例独立使用;组合到同一屏幕时,将同名事件的处理合并到一个事件积木中。

when 按钮1.Click() {
  if (生物识别1.IsAvailable()) {
    生物识别1.Authenticate("查看隐私内容", "请验证指纹或人脸")
  } else {
    标签1.Text = "本机不支持指纹或人脸,请用密码登录"
  }
}

when 生物识别1.AuthSucceeded() {
  标签1.Text = "验证通过"
}

when 生物识别1.AuthFailed(消息) {
  标签1.Text = join("验证未通过:", 消息)
}

注意:它只能确认「是这台手机的主人」,不能区分是谁,也不能代替账号登录。 需要联网登录的应用,通常第一次用账号密码登录,之后再用生物识别快速解锁。

搭建与测试

在设计器拖入本组件和案例涉及的按钮、标签、布局等组件,按案例中的名称重命名。先运行最小案例,确认事件返回,再增加业务逻辑。示例中的素材先上传到项目,服务器地址、令牌、文件路径换成自己的值。

可见组件需要有非零宽高;不可见工具组件必须由属性或方法启动。设计器展示样式不等于运行时已加载数据或绑定目标。联机测试应使用包含本组件的 AI 伴侣;涉及系统入口或权限的行为还要编译安装后验证。

案例:解锁私人内容

放生物识别、按钮和标签;关闭设备密码回退时只接受生物识别。仅在成功事件后显示受保护布局。

when Screen1.Initialize() {
  生物识别1.AllowDeviceCredential = false
  垂直布局_隐私.Visible = false
}
when 按钮_解锁.Click() {
  生物识别1.Authenticate("解锁私人内容", "请验证本机身份")
}
when 生物识别1.AuthSucceeded() {
  垂直布局_隐私.Visible = true
}

设备必须先在系统设置里录入指纹或人脸;验证被取消或失败时保持隐私布局隐藏。它不返回生物信息,也不代替服务器账号认证。

属性、方法与事件速查

完整参数类型、默认值和平台说明见组件参考。下表按调用入口列出用途;有完成事件的方法在事件中读取结果。

入口 用途
允许锁屏密码(AllowDeviceCredential) 为真时验证框提供「使用锁屏密码」:没录指纹人脸、或多次识别失败时可以改用锁屏密码 / 图案通过。Android 10 及以上生效。
开始验证(标题,副标题)(Authenticate) 弹出系统验证框。验证通过触发「验证成功时」;用户取消、次数过多被锁定、设备不支持时触发「验证失败时」并给出原因。识别不匹配时系统会在框内提示重试,不触发事件。
是否可用(IsAvailable) 本机能否进行生物识别验证:系统版本支持、有指纹或人脸硬件、并且已经录入。勾选了允许锁屏密码时,设置了锁屏密码也算可用。
验证失败时(消息)(AuthFailed) 身份验证没有通过(用户取消、次数过多被锁定、没录入指纹人脸、设备不支持等),“消息”参数为原因。
验证成功时(AuthSucceeded) 身份验证通过。

常见问题与验收

检查项 操作与预期
初始化 对照案例检查是否已经调用加载、注册、连接或显示方法;仅拖入组件不会替你执行这些步骤。
结果返回 将成功事件和失败事件都接到标签,记录事件参数;异步操作完成前不读取结果属性。
输入配置 检查素材名大小写、网址是否为直接资源地址、文件是否存在、编号和索引是否在范围内。
平台与权限 按组件参考中的平台说明测试;授权被拒绝时应有明确提示,不继续假定操作成功。
最小案例 先验证页面中的最小案例,再验证第二个场景;重复操作、取消、返回屏幕后结果应符合事件说明。

完整 .aia 源码与操作指导

下载 .aia 源码

需要支持生物识别的真实设备,并在系统设置录入指纹/人脸;允许锁屏密码时可使用设备密码。鸿蒙系统控件会合并标题与副标题。此案例只演示本机身份验证,不替代服务器授权或真实硬件控制。

导入 BiometricAllFeatures.aia,连接最新伴侣,或编译独立安装包。真机/伴侣运行尚未实测。

API / 功能 操作入口 预期结果
AllowDeviceCredential 设计器配置与读取/设置 切换允许锁屏密码 属性区显示实际设置,并重新判断可用性;安卓10+支持密码回退
IsAvailable 点检查 有已录入生物识别,或允许已有锁屏密码时可用;否则提示不可用
Authenticate 点验证 弹真实系统验证框;避免重复提交;标题来自输入框
AuthSucceeded 用真实身份完成验证 显示受保护布局,成功计数增加
AuthFailed 在系统框取消 布局保持锁定、失败计数增加、显示具体原因;可再次验证
再次验证和锁定 点重新锁定,再验证 恢复锁定并可再次解锁;识别暂不匹配由系统提示重试

所有返回值均用于界面反馈,错误由底部错误区展示。设计器采用明确非默认配置,初始化与界面同步。API 覆盖检查按最终 AIA 检查方法、事件、属性读取与设置及设计器配置,不能替代真实设备验证。

生物识别

导入方法:项目 → 导入项目(.aia)→ 选择下载的 .aia 源码文件。 需要支持生物识别的真实设备,并在系统设置录入指纹/人脸;允许锁屏密码时可使用设备密码。鸿蒙系统控件会合并标题与副标题。此案例只演示本机身份验证,不替代服务器授权或真实硬件控制。 覆盖检查 7/7。首次载入及保存重开均0个错误,真实后台导入、安装包编译通过;真机/伴侣/硬件联调尚未实测。全部属性读写、方法与事件的操作入口和预期结果见组件指导。

文档反馈