0

在 iOS 8 中使用 Touch ID 进行身份验证时,从身份验证到我的应用程序从身份验证 VC 到登录的 VC 需要几秒钟。我将成功验证时的直接方法调用替换为首先获得主队列的方法调用,现在它非常快。这在某种程度上与 Touch ID 在非主队列上做一些工作有关,但我找不到任何关于此的文档或指南。应该在主队列上执行所有与 Touch ID 相关的代码,还是只是身份验证的结果?

4

1 回答 1

2

查看 Apple示例代码,您应该确保reply在主队列的块中执行 UI 更新,因为它可能正在执行异步块。

这是用于处理该示例项目中的结果的方法 -

- (void)printResult:(UITextView*)textView message:(NSString*)msg
{
    dispatch_async(dispatch_get_main_queue(), ^{
        // update the result in the main queue because we may be calling from asynchronous block
        textView.text = [textView.text stringByAppendingString:[NSString stringWithFormat:@"%@\n",msg]];
        [textView scrollRangeToVisible:NSMakeRange([textView.text length], 0)];
    });
}
于 2014-10-09T10:30:09.540 回答