支持可重复使用的Touch ID匹配。 evaluateAccessControl可以使用上一次手机解锁的匹配:和evaluatePolicy:localizedReason:reply:。
对我来说,这意味着如果使用不同的手指,可以触发事件。
摘要示例:
用手指1登录,再用手指1登录,然后再次登录。没有事件。
如果使用手指2,则会引发事件。后续使用手指2无事件。
我完全同意我不会知道使用了什么手指,只是使用了不同的。这个信息可能会给我足够的信息来采取行动。
使用案例
我正在创建一个应用程序,以协助家庭暴力情况,如果要求受害者解锁启用触摸ID的应用程序,并使用不同的手指,则会从应用程序中谨慎地删除求助电话。< / p>
研究
这是发布说明之外的Apple网站上的not documented,然而它是Xamarin's site内的Diffs。我跟进了developer forums并且不想等待文档错误被确认。
在我的场景中,设备在成人和儿童之间共享,两者都注册了TouchID。我需要确定是否使用了不同的手指来保护敏感设置。
问题
如何使用LocalisedReasonReply确定是否使用了不同的手指来解锁手机? (或者我误解了新功能)
[Foundation.Export("evaluateAccessControl:operation:localizedReason:reply:")]
public virtual Void EvaluateAccessControl (SecAccessControl accessControl,LAAccessControlOperation operation, String localizedReason, [ObjCRuntime.BlockProxy(typeof(ObjCRuntime.Trampolines/NIDActionArity2V1))]Action`2 reply)
答案 0 :(得分:2)
&#34;支持可重复使用的Touch ID匹配......&#34;意思是: -
您可以通过在evaluateAccessControl中指定时间间隔来重新使用设备解锁身份验证:和evaluatePolicy:localizedReason:reply:methods。
通过使用LAContext属性&#34; touchIDAuthenticationAllowableReuseDuration&#34;,您可以在应用中重用设备解锁身份验证,这是因为在设备解锁时您已经验证了自己。因此,不需要再次进行身份验证。(新介绍iOS 9)
注意:持续时间必须以秒为单位。它的默认值是&#39; 0&#39;并且您指定持续时间最多5分钟,超过5分钟不会增加接受的间隔。