首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在目标C中取消LAContext评估

在目标C中取消LAContext评估
EN

Stack Overflow用户
提问于 2016-03-06 07:22:06
回答 1查看 839关注 0票数 3

我正在尝试用objective C为iphone编写一段代码,基本上我正在尝试使用带有LAContext类的触摸id传感器。我发送了一个“使用生物特征进行身份验证”请求,过了一段时间(例如200毫秒),我想取消这个请求。不幸的是,我不能在我的代码中取消这个请求,我发现的唯一方法是取消来自用户的请求,这需要用户操作。下面是我的代码:

代码语言:javascript
复制
LAContext *context = [[LAContext alloc] init];
NSError *error = nil;
if (true) {
    [context 
evaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics
                        localizedReason:@"Place your finger?"
                        reply:^(BOOL success, NSError *error) {
                        }];

如果你们能帮我,我真的很感激。

谢谢。

EN

回答 1

Stack Overflow用户

发布于 2017-10-05 18:44:58

从iOS 9开始就可以做到这一点。在CAContext类中有一个invalidate方法。

在控制器中,紧跟在[context evaluatePolicy: localizedReason: reply:]之后编写下面的代码

代码语言:javascript
复制
[self performSelector:@selector(invalidateCA) withObject:self afterDelay:0.2]; 

然后声明用于取消TouchID的方法

代码语言:javascript
复制
- (void)invalidateCA
{
    // you have to get a reference to it when you create CAContext
    [self.context invalidate];
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35821146

复制
相关文章

相似问题

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