首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如果使用密码,则获取Touch ID通知

如果使用密码,则获取Touch ID通知
EN

Stack Overflow用户
提问于 2015-04-19 10:45:05
回答 1查看 2.3K关注 0票数 1

我在我的应用程序中使用了Touch ID。

  • 如果连续三次触摸ID指纹扫描失败,我会得到一个Application retry limit exceeded.错误。
  • 如果触摸ID指纹扫描再次失败两次,我会得到一个Biometry is locked out.错误。

在被禁止使用生物计量法之后,你需要输入你的密码。奇怪的是,如果您的密码输入正确,那么这不会导致successevaluatePolicy回调中。相反,你会被提示重新测试你的生物计量学。

我如何才能得到一个通知,密码是正确输入后,被锁在生物测量之外?

EN

回答 1

Stack Overflow用户

发布于 2015-04-20 14:51:41

要习惯我提到的这个项目,一个很好的方法是使用苹果提供的这个项目:结合密钥链和LocalAuthentication的Touch ID

有两种方法可以提示用户进行Touch ID身份验证;每种方法各有优缺点。

  1. -[LAContext evaluatePolicy:localizedReason:reply:]

这允许您提示系统只要求用户进行Touch ID身份验证(如果设置正确的话)。如果用户由于这里或其他地方的多次故障而被锁定,则要求他们输入其密码作为再次解锁Touch ID使用的一种方式(据我所知)。由于调用evaluatePolicy:localizedReason:reply:的最初目标是让用户使用Touch ID进行身份验证,所以仍然会要求他们这样做。

这种方法的好处是,您从调用中得到的错误更多地描述了所发生的事情(用户取消和失败)。

  1. 在由kSecAttrAccessibleWhenPasscodeSetThisDeviceOnly保护的密钥链中存储一些东西

这个选项可能会给你你感兴趣的体验。使用此属性在密钥链中存储某些内容后,尝试从密钥链复制它将显示更熟悉的Touch ID提示符,该提示符允许用户在需要时输入其密码(尽管我在iOS 8.3 Beta中注意到,在第一次尝试时,提示符没有显示“输入密码”选项。

这种方法的缺点是,无论用户如何结束进程(以某种方式失败或只单击cancel),您都会得到一个失败的错误。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29728762

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档