I have Touch ID running on my app and just now it stopped working for about a dozen runs. I eventually drilled down and found that the error.code in the reply block was -1004.
LAContext *context = [[LAContext alloc] init];
context.localizedFallbackTitle = @"";
[context evaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics localizedReason:reason reply:replyBlock];
This was on a real device, not the simulator (obviously) but -1004 isn't any of the documented values:
#define kLAErrorAuthenticationFailed -1
#define kLAErrorUserCancel -2
#define kLAErrorUserFallback -3
#define kLAErrorSystemCancel -4
#define kLAErrorPasscodeNotSet -5
#define kLAErrorTouchIDNotAvailable -6
#define kLAErrorTouchIDNotEnrolled -7
The problem cleared itself on my device without any action on my part, but this is puzzling. What does the -1004 error.code mean?