iOS13.0 13.1 LAContext 无法弹出指纹UI

iOS13.0 13.1 LAContext 无法弹出指纹UI 神坑

在升级iOS13.0 13.1时,指纹设备LAContext函数调用指纹显示UI慢甚至不显示UI,目前来看是苹果的bug。指纹传感器在进行着检测,而指纹UI无法显示出来。

通过查阅资料,网上有很多大神发现了手指放到home键上,可以及时的弹出验证ui,或者晃动设备也可显示出UI。

笔者想着使用模拟摇晃的方法,及时显示出UI,奈何才疏学浅,不知从何下手。

后通过官方论坛发现,如果想及时显示出指纹验证UI,可通过调用两次evaluatePolicy:方法。

话不多说,代码如下:

LAContext*context = [[LAContext alloc]init];

__block NSString*message;

context.localizedFallbackTitle = @"Enter PIN";

[context evaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics localizedReason:@"Unlock access to locked feature" reply:^(BOOL success, NSError * _Nullable error) { }];

[context evaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics localizedReason:@"Unlock access to locked feature" reply:^(BOOL success, NSError *authenticationError) {

if(success) {

        message =@"evaluatePolicy: succes";

    } else{

        message = [NSStringstringWithFormat:@"evaluatePolicy: %@", authenticationError.localizedDescription];

    }

    [self printMessage:message inTextView:self.textView];

}];

你可能感兴趣的:(iOS13.0 13.1 LAContext 无法弹出指纹UI)