Touch ID

这是在IOS上验证用户身份的操作,使用Local Authentication框架,在这个框架里每种验证用户身份的方法称为策略,现有的策略有两种,一个是只使用Touch ID的策略:DeviceOwnerAuthenticationWithBiometrics,一个是使用Touch ID和设备密码的策略:DeviceOwnerAuthentication。
首先创建一个上下文环境,我们将在这个环境里验证用户的身份。

let authenticationContext = LAContext()

接下来选择策略,通过上下文看看设备是否有验证这个策略的能力,然后验证就好了。

let policy = LAPolicy.DeviceOwnerAuthentication
var error: NSError? = nil
let canAuthenticate = authenticationContext.canEvaluatePolicy(policy, error: &error)
if canAuthenticate == false {
    print("can't use because:\(error)")
}
let authenticationReason = "You are about to See Top Secert"
authenticationContext.evaluatePolicy(policy, localizedReason: authenticationReason) { (succeeded:Bool, error:NSError?) -> Void in
    if succeeded { 
        //验证成功,做你想做的事
    }  else {
        print("Not authenticated!\(error)")
        //对于不同的错误可以做不同的处理
        if error?.code == LAError.UserFallback.rawValue {
            //用户决定输入密码
            print("请输入密码")
        }
        if error?.code == LAError.UserCancel.rawValue {
            //用户取消
            print("取消了就不给你看咯")
        }
    }
        
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 介绍 Touch ID是iPhone5S后加入的一项新的功能,也就是大家熟知的指纹识别技术。iOS8后苹果开放了T...
    Dincoln阅读 1,333评论 0 2
  • 前言:如果图片看不了请移步:简书 Touch ID简介 Touch ID指纹识别作为iPhone 5s上的“杀手级...
    珍此良辰阅读 3,040评论 3 6
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,273评论 19 139
  • iOS 8 SDK向开发者公开了Touch ID指纹识别功能,允许App对用户身份进行本地验证。使用TouchID...
    走在路上的小二阅读 1,006评论 0 4
  • 阳气者,若天与日, 失其所,则折寿而不彰。 故天运当以日光明。 是故阳因而上,卫外者也。 因于寒,欲如运枢,起居如...
    一叶一瓢阅读 896评论 0 0