一直在寻找这个,但似乎找不到合适的答案。目前,我的应用程序中有一个系统可以选择 PIN 码进入应用程序。我想改用 Touch ID,但不知道如何处理非 Touch ID 手机。
问:对于没有 Touch ID 硬件的用户,我们可以使用 Touch ID API 要求用户输入他们的手机 PIN 以进入应用程序吗?
以下代码用于测试我们是否可以评估策略,此测试将告诉我们 Touch ID 是否可用并已注册。如果NO
您可以使用自己的 PIN 视图进行授权。
LAContext *context = [[LAContext alloc] init];
NSError *error;
BOOL test = [context canEvaluatePolicy: LAPolicyDeviceOwnerAuthenticationWithBiometrics error:&error];
if (test) {
[context evaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics localizedReason:@"For some reasons" reply:^(BOOL success, NSError *error) {
if (success) {
// authorized successfully
}
}];
} else {
NSLog(@"%@", error);
// use a pin code
}
正如我所尝试的,您无法访问内置 PIN,而需要使用自定义视图。