LAContext evaluatePolicy:localizedReason:reply:当用户没有取消时,LAErrorUserCancel出错

时间:2015-08-18 21:01:12

标签: ios iphone ios8 touch-id

我正在尝试在我的应用上实施Touch ID:

LAContext *ctx = [[LAContext alloc] init];
[ctx evaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics localizedReason:@"Authenticate to access." reply:^(BOOL success, NSError *error) {
    if(success){
       ...
    }else{
        dispatch_async(dispatch_get_main_queue(), ^{
            switch (error.code) {
                case LAErrorTouchIDNotAvailable:
                case LAErrorUserFallback:
                    self.passwordPanel.hidden = NO;
                    break;

                default:
                    //we hit here with error code -2
            }
        });
    }
}];

这是一个内部应用程序,目前由5位用户使用。包括我在内的四个人(混合了iPhone 6和iPhone 5s设备)都没有问题。最后一个用户(也有iPhone 6)不断点击default个案,其错误代码为-2,设置为LAErrorUserCancel。问题是,当调用evaluatePolicy时,他们会立即点击它,甚至无法扫描他们的手指或点按取消。

为什么会发生这种情况?

0 个答案:

没有答案