HarmonyOS 鸿蒙Next 如何拉起系统设置录入指纹 人脸识别等数据

发布于 1周前 作者 zlyuanteng 来自 鸿蒙OS

HarmonyOS 鸿蒙Next 如何拉起系统设置录入指纹 人脸识别等数据

如何设备未录入指纹数据,能不能自动跳转到系统设置页设置?

指纹登录时,未录入数据时,如何跳转到系统设置进行录入?

指纹登录时,未录入数据时,如何跳转到系统设置进行录入?

2 回复
 

拉起系统设置录入指纹,人脸识别等凭证 目前是不支持这个能力的 目前指纹以及人脸识别都是在已经有凭证录入的情况下 如果未录入只能让先录入

以下为已有凭证后 拉起识别认证的代码

import { BusinessError } from  '@kit.BasicServicesKit';
import { userAuth } from '@kit.UserAuthenticationKit';
[@Entry](/user/Entry)
[@Component](/user/Component)
struct UserAuth {
  [@State](/user/State) message: string = '点击开始';
  build() {
    Row() {
      Column() {
        Text(this.message)
          .fontSize(50)
          .fontWeight(FontWeight.Bold)
          .onClick(() => {
            userAuthorization()
          })
      }
      .width('100%')
    }
    .height('100%')
  }
}
function userAuthorization() {
  // 设置认证参数
  const authParam: userAuth.AuthParam = {
    challenge: new Uint8Array([49, 49, 49, 49, 49, 49]),
    authType: [userAuth.UserAuthType.FACE],
    authTrustLevel: userAuth.AuthTrustLevel.ATL3,
  };
  // 配置认证界面需设置navigationButtonText
  const widgetParam: userAuth.WidgetParam = {
    title: '请验证身份',
    navigationButtonText: '使用密码',
  };
  try {
    // 获取认证对象
    let userAuthInstance = userAuth.getUserAuthInstance(authParam, widgetParam);
    console.log('get userAuth instance success');
    // 订阅认证结果
    userAuthInstance.on('result', {
      onResult(result) {
        // 若收到ResultCode值为12500000,代表操作成功
        console.log('userAuthInstance callback result = ' + JSON.stringify(result));
        // 若收到ResultCode值为12500011,说明用户点击了导航按钮想切换自定义认证方式
        if (result.result == 12500011) {
          //请自行完成拉起自定义认证界面的实现
        }
      }
    });
    console.log('auth on success');
    userAuthInstance.start();
    console.log('auth start success');
  } catch (error) {
    const err: BusinessError = error as BusinessError;
    console.error(`auth catch error. Code is ${err?.code}, message is ${err?.message}`);
  }
} 

更多关于HarmonyOS 鸿蒙Next 如何拉起系统设置录入指纹 人脸识别等数据的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS鸿蒙Next系统中,拉起系统设置以录入指纹或人脸识别等数据,可以通过调用系统提供的Intent来实现。具体操作步骤如下:

  1. 创建Intent:使用HarmonyIntent(或对应的鸿蒙Intent类)创建一个指向系统设置中指纹或人脸识别录入页面的Intent。

  2. 设置Action和Category:为Intent设置合适的Action和Category,这些值通常是系统预定义的,用于指示需要打开的特定设置页面。

  3. 启动Activity:通过调用startActivityForResult或类似方法,从当前应用启动系统设置的Activity,以便用户录入指纹或人脸数据。

  4. 处理结果:如果需要,可以在Activity的结果回调中处理用户录入数据后的反馈。

示例代码(伪代码,具体实现需参考鸿蒙SDK文档):

// 伪代码示例,实际需替换为鸿蒙SDK中的对应类和方法
HarmonyIntent intent = new HarmonyIntent();
intent.setAction(Settings.ACTION_FINGERPRINT_ENROLL); // 假设这是设置指纹录入的Action
startActivityForResult(intent, REQUEST_CODE_FINGERPRINT_ENROLL);

注意:实际开发中,Action和Category的具体值需参考鸿蒙系统的官方文档或API指南。

如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html

回到顶部