如何判断iOS设备是人脸还是触摸?

how to determine whether the ios device is a face or a touch?

提问人:user7021848 提问时间:6/5/2023 更新时间:6/5/2023 访问量:108

问:

当我在设置中关闭Face ID时,出现如下错误:

    LAContext *myContext = [[LAContext alloc] init];
    NSError *authError = nil;
    [myContext canEvaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics error:&authError]

authError 为“未注册任何标识”。 此错误不指示手机是触摸ID还是面部ID,如何确定ios设备是面部还是触摸?

我尝试了不同的iphone设备,authError是“没有身份被注册”。我无法确定ios设备是面部还是触摸。

iOS Objective-C iPhone Touch-ID 人脸 ID

答:

0赞 Paulw11 6/5/2023 #1

对象的 biometryType 属性告诉当前设备上可用的生物识别身份验证类型:LAContext

LAContext *myContext = [[LAContext alloc] init];
switch (myContext.biometryType) {
    case LABiometryTypeFaceID:
        // Do something with Face ID
    break;

    case LABiometryTypeTouchId:
       // Do something with Touch ID
    break;

    case LABiometryTypeNone:
       // Biometrics are not available
}

评论

0赞 user7021848 6/12/2023
好的,非常感谢