[swift] Swift로 디바이스의 터치 ID 지원 여부 확인하기

iOS 디바이스에서 터치 ID가 지원되는지 여부를 알고 싶을 때가 있습니다. 이를 확인하고자 할 때 Swift를 사용하여 간단하게 확인할 수 있습니다.

LAContext 사용하기

터치 ID를 확인하기 위해 LocalAuthentication 프레임워크를 사용합니다. 이 프레임워크는 LAContext 클래스를 제공하며, 해당 클래스의 canEvaluatePolicy(_:error:) 메서드를 사용하여 터치 ID 지원 여부를 확인할 수 있습니다.

import LocalAuthentication

// LAContext 객체 생성
let context = LAContext()

// 디바이스의 터치 ID 지원 여부 확인
var error: NSError?
if context.canEvaluatePolicy(.deviceOwnerAuthenticationWithBiometrics, error: &error) {
    // 터치 ID가 지원됨
    print("터치 ID가 지원됩니다.")
} else {
    // 터치 ID가 지원되지 않음
    print("터치 ID가 지원되지 않습니다.")
}

canEvaluatePolicy(_:error:) 메서드는 지정한 정책(.deviceOwnerAuthenticationWithBiometrics)을 평가할 수 있는지 여부를 반환합니다. 이 정책은 터치 ID, 얼굴 인식 등의 생체 인식을 사용하여 디바이스의 소유자를 인증합니다.

결과 확인하기

위의 코드를 실행하면 context.canEvaluatePolicy(.deviceOwnerAuthenticationWithBiometrics, error: &error)에서 반환하는 값에 따라 터치 ID 지원 여부를 확인할 수 있습니다.

터치 ID가 지원되는 경우, “터치 ID가 지원됩니다.” 라는 메시지가 출력됩니다. 터치 ID가 지원되지 않는 경우, “터치 ID가 지원되지 않습니다.” 라는 메시지가 출력됩니다.

참고자료