2

Face id機能を備えたアプリを作成しようとしています。しかし、エラー コードを処理しようとすると、LAErrorUserCancel しかキャッチできません。LAErrorAuthenticationFailed などの他のエラー コードをキャッチできませんでした。

        [context evaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics localizedReason:@"asd"   reply:
         ^(BOOL success, NSError *authenticationError) {

             if (success) {
                 [[NSOperationQueue mainQueue] addOperationWithBlock:^(void){
                     [NSTimer scheduledTimerWithTimeInterval:1/40
                                                      target:self
                                                    selector:@selector(registerTouchID)
                                                    userInfo:nil
                                                     repeats:NO];
                 }];
             }
             else {
                 switch (authenticationError.code) {
                     case LAErrorAuthenticationFailed:
                         dispatch_async(dispatch_get_main_queue(), ^{
                            [self TouchFail];
                         });
                         break;

                     case LAErrorUserCancel:
                         NSLog(@"User pressed Cancel button");
                         break;

                     case LAErrorUserFallback:
                         NSLog(@"User pressed \"Enter Password\"");
                         break;

                     case LAErrorBiometryLockout:
                         dispatch_async(dispatch_get_main_queue(), ^{
                             [self LockoutAlert];
                         });
                         break;
                     default:
                         break;
                 }
             }
         }];
4

2 に答える 2