我們都知道iPhone支持指紋解鎖,之前沒有在項(xiàng)目中應(yīng)用過,還以為有多么神秘,沒想到這么簡單!系統(tǒng)已經(jīng)為我們提供了框架<LocalAuthentication/LocalAuthentication.h>。
最近研究了下iOS8的文檔,對指紋識別了解了下,并下載了一個官方提供的Demo。但是
NS_CLASS_AVAILABLE(10_10, 8_0)
從這句中可以看出,要想使用TouchID的接口,電腦的mac系統(tǒng)必須是10.10的,手機(jī)iOS系統(tǒng)必須是8.0,根據(jù)Demo中的代碼和文檔可以看出,TouchID的基本用法。
1、首先需要導(dǎo)入依賴包LocalAuthentication.framework。
2、檢查設(shè)備是否能使用TouchID.
- (void)touchView {
LAContext *context = [[LAContext alloc] init];
__block NSString *msg;
NSError *error;
BOOL success;
// 判斷是否支持指紋解鎖
success = [context canEvaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics error:&error];
if (success) { // 返回結(jié)果是yes,則支持
msg = [NSString stringWithFormat:NSLocalizedString(@"TOUCH_ID_IS_AVAILABLE", nil)];
// 開始指紋驗(yàn)證
[context evaluatePolicy:LAPolicyDeviceOwnerAuthentication localizedReason:NSLocalizedString(@"UNLOCK_ACCESS_TO_LOCKED_FATURE", nil) reply:^(BOOL success, NSError * _Nullable error) {
if (success) { // 返回yes 則驗(yàn)證成功
msg = [NSString stringWithFormat:NSLocalizedString(@"EVALUATE_POLICY_SUCCESS", nil)];
} else {
msg = [NSString stringWithFormat:NSLocalizedString(@"EVALUATE_POLICY_WITH_ERROR", nil)];
}
}];
} else {
msg = [NSString stringWithFormat:NSLocalizedString(@"TOUCH_ID_IS_NOT_AVAILABLE", nil)];
}
}
只需要在自己定義的方法中寫以上代碼即可,是不是很簡單,小伙伴趕緊來嘗試一下吧!