Если вы хотите играть с частным рамках BiometricKit на взломанный устройства я не могу помочь ...
Если вы заинтересованы только в привлечении функциональности TouchID хотя, вам нужно всего лишь использовать общественность LocalAuthentication рамки.
Вот действительно базовая реализация в Objective-C в притвориться MyViewController
, подкласс UIViewController
(Вы, возможно, в конце концов, нужно переместить логику из там):
#import "MyViewController.h"
@import LocalAuthentication;
@interface MyViewController()
@property (nonatomic, strong) LAContext *localAuthContext;
@end
@implementation MyViewController
- (void)viewDidLoad {
[super viewDidLoad];
[self authenticateWithTouchID]; // Call this whenever TouchID authentication is required.
}
#pragma mark - TouchID Authentication
- (void)authenticateWithTouchID {
NSError *evaluationError;
if (![self.localAuthContext canEvaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics error:&evaluationError]) {
// TODO: Handle error case. (device with no TouchID capability)
NSLog(@"%@", evaluationError.localizedDescription);
} else {
[self.localAuthContext evaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics
localizedReason:@"Authenticate using Touch ID"
reply:^(BOOL success, NSError *error) {
if (!success) {
// TODO: Handle error case. (failed TouchID authentication)
NSLog(@"%@", error.localizedDescription);
} else {
// TODO: Handle success case.
NSLog(@"TouchID authentication successful.");
}
}];
}
}
#pragma mark - Lazy Instantiation
- (LAContext *)localAuthContext
{
if (!_localAuthContext) {
_localAuthContext = [[LAContext alloc] init];
_localAuthContext.localizedFallbackTitle = @""; // Hides the "Enter Password" button. Comment out to allow the user to enter his device passcode as a fallback option.
}
return _localAuthContext;
}
@end
Сначала убедитесь, что у вас есть отпечатки пальцев настроен на вашем устройстве (Настройки> Сенсорный ID & Код доступа> Отпечатки пальцев).