macos - 如何测试 macOS 的 Touch ID?

标签 macos cocoa touch-id

我正在开发一款适用于 macOS 的应用程序。我们希望使用新款 MacBook Pro 中的 Touch ID 传感器来解锁我们的应用程序。在 iOS 上,您可以从模拟器测试本地身份验证框架。

有没有办法测试 Mac 应用程序的 Touch ID?最新的 XCode 版本提供了一个不错的 Touch Bar 模拟器,但我找不到 Touch ID 的任何内容。

谢谢!

iOS Simulator Touch ID testing

最佳答案

Rick Fillion(来自 1Password)很友善地提供了一些建议:https://twitter.com/rickfillion/status/794370861646172160

使用LAPolicy.DeviceOwnerAuthentication进行测试。

这是我正在运行的代码(Swift 2.3):

import Cocoa
import LocalAuthentication

class ViewController: NSViewController {

    override func viewDidLoad() {
        super.viewDidLoad()

        let myContext = LAContext()
        let myLocalizedReasonString = "unlock itself"

        var authError: NSError? = nil
        if #available(iOS 8.0, OSX 10.12, *) {
            if myContext.canEvaluatePolicy(LAPolicy.DeviceOwnerAuthentication, error: &authError) {
                myContext.evaluatePolicy(LAPolicy.DeviceOwnerAuthentication, localizedReason: myLocalizedReasonString) { (success, evaluateError) in
                    if (success) {
                        // User authenticated successfully, take appropriate action
                        print("Success")
                    } else {
                        // User did not authenticate successfully, look at error and take appropriate action
                        print("Failure")
                    }
                }
            } else {
                // Could not evaluate policy; look at authError and present an appropriate message to user
                print("Evaluation")
                print(authError)
            }
        } else {
            // Fallback on earlier versions
            print("Fallback")
        }
        // Do any additional setup after loading the view.
    }
}

关于macos - 如何测试 macOS 的 Touch ID?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40414077/

相关文章:

objective-c - 使 Cocoa 窗口全屏显示

macos - 如何在终端 (Mac) 中运行 .lua 文件

c++ - 分配内存时内存使用量不会增加

macos - OpenGL GLSL,从 "behind"开始查看金字塔卡住

ios - iOS 8 中 LAContext 实例的生命周期如何表现?

ios - TouchID 取消应该关闭 View Controller

ios - 不使用 Touch ID 登录

macos - 如何禁用 NSTextView 中的文本颜色?

ios - NSSortDescriptor 中文...怎么样?

objective-c - 阻止 IKImageView 处理手势