最近苹果推出新款iPhone手机,我身边的两个土豪那是第一时间就买了,那逼格一下子就提升了好几个档位,我等小码农也只能无奈的把iPhoneX的适配以及启用FaceID应用到项目之中.
昨天A产品找到我,交给了我一台iPhoneX,双手颤抖的接过之后,一道惊雷在耳边炸裂开来,今天下班前iPhoneX的适配和人脸解锁需要搞定,明天手机我就不带了,要给媳妇大人送去(- -!),心里一万只小白兔奔腾而过. . . .(省略1万字).
废话不多说直接上货,iPhoneX的适配不是特别的繁琐,快速适配iPhoneX的解决方法就是 在LaunchImage加一张1125 * 2436 的图片,并且在图片的Contents.json文件中将"minimum-system-version":"11.0" 就可以了,然后就需要小伙伴们根据具体控件的偏移进行微调,网上的帖子蛮多的就不详细介绍了.
面容ID(FaceID):
由于时间比较急,小弟就开始各种百度,Google,但是关于FaceID的帖子还是比较少,大部分都是关于我大苹果FaceID流弊,识别效率快,老婆再也不用按老公手了,直接按脸云云...没有看到什么可以直接CVR(command + C, command + V,command + R )的代码,哎...也怪小弟英文不好,没啥水准,只会CVR. . . 所以只能自己埋头干了,过程是困苦的,但是结果是欣喜的内容如下:
#import
检验是否系统支持FaceID:
LAContext *context = [[LAContext alloc]init];
NSError *error = nil;
if ([context canEvaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics error:&error])
验证FaceID是否通过
- (void)evaluatePolicy:(LAPolicy)policy
localizedReason:(NSString *)localizedReason
reply:(void(^)(BOOL success, NSError * __nullable error))reply;
回调success : 成功
回调:error :失败
error.code : 1.LAErrorAuthenticationFailed 身份验证失败
2.LAErrorUserCancel 用户在认证时点击取消
3.LAErrorUserFallback 用户点击输入密码取消指纹验证
4.LAErrorSystemCancel 身份认证被系统取消(按下Home键或电源键)
5.LAErrorTouchIDNotEnrolled 用户未录入指纹
6.LAErrorPasscodeNotSet 设备未设置密码
7.LAErrorTouchIDNotAvailable 该设备为设置FaceID
8.LAErrorTouchIDLockout 连续五次密码错误,FaceID被锁定.
9.LAErrorAppCancel 用户不能控制情况下App被挂起
好了 ,通过验证是否支持,以及调起验证就可以完成FaceID的认证了,简单粗暴,祝小伙伴们也早日使用.