[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가 지원되지 않습니다.” 라는 메시지가 출력됩니다.
참고자료
- Apple Developer Documentation - LocalAuthentication
- Apple Developer Documentation - LAContext
- Apple Developer Documentation - LAPolicy