iOS 9 之后锁定指纹识别之后,如果需要立即弹出输入密码界面需要使用LAPolicyDeviceOwnerAuthentication这个属性重新发起验证
如果输入了锁屏密码,指纹解密锁定会默认解除

iOS 8 错误5次锁定后,第6次验证需要密码

支付宝微信对于锁定的不同处理
2. 指纹识别的LAPolicy
第一个枚举LAPolicyDeviceOwnerAuthenticationWithBiometrics就是说,用的是手指指纹去验证的;NS_ENUM_AVAILABLE(NA, 8_0)iOS8 可用
第二个枚举LAPolicyDeviceOwnerAuthentication少了WithBiometrics则是使用TouchID或者密码验证,默认是错误两次指纹或者锁定后,弹出输入密码界面;NS_ENUM_AVAILABLE(10_11, 9_0)
iOS 9可用
3. 指纹识别LAContext的方法
canEvaluatePolicy:error:方法用来检查当前设备是否可用touchID,返回一个BOOL值;不会弹验证指纹密码框
evaluatePolicy:localizedReason:reply:调用验证方法,会弹验证指纹密码框
4. feedback按钮显示
默认第一次识别只有取消按钮
错误一次之后,会显示 feedBack 按钮
如果不想显示 feedback 按钮;可以设置 feedBackTitle = @""

设置 feedbackTitle 为@""

设置 feedbackTitle 为@"验证登录密码"

5. CancelTitle按钮显示
该属性, iOS 10 才可以进行设置,iOS 以前是不可以进行设置的
6. 指纹识别慢的问题
我的 iphone 7 Plus指纹识别启动过程需要2s 左右的时间;如果发现启动比较慢,这个是正常现象
支付宝和微信为了消除用户的紧张情绪,在开启指纹识别的时候都有放 HUD
指纹识别完成后,需要返回主线程进行相应的 操作;否者你会发现有时候识别完4-5秒才有反应

微信支付 HUD显示案例
demo的 HUD显示案例










