[swift] Swift Device의 터치ID 및 얼굴인식 기능
Touch ID 사용하기
Touch ID는 사용자의 손가락 지문을 사용하여 인증하는 기능입니다. 아래의 코드를 사용하여 Touch ID를 사용할 수 있습니다.
import LocalAuthentication
class ViewController: UIViewController {
func authenticateWithTouchID() {
let context = LAContext()
var error: NSError?
guard context.canEvaluatePolicy(.deviceOwnerAuthenticationWithBiometrics, error: &error) else {
if let error = error {
print("Touch ID를 사용할 수 없음: \(error.localizedDescription)")
}
return
}
context.evaluatePolicy(.deviceOwnerAuthenticationWithBiometrics, localizedReason: "지문 인식을 사용하여 로그인합니다.") { (success, authenticationError) in
if success {
print("인증 성공")
} else {
if let error = authenticationError {
print("인증 실패: \(error.localizedDescription)")
} else {
print("인증 취소")
}
}
}
}
}
위 코드에서 authenticateWithTouchID()
함수를 호출하면 Touch ID가 사용된 로그인 인증 프로세스가 시작됩니다.
Face ID 사용하기
Face ID는 사용자의 얼굴을 사용하여 인증하는 기능입니다. Touch ID와 비슷한 방식으로 Face ID를 사용할 수 있습니다. 아래의 코드를 사용하세요.
import LocalAuthentication
class ViewController: UIViewController {
func authenticateWithFaceID() {
let context = LAContext()
var error: NSError?
guard context.canEvaluatePolicy(.deviceOwnerAuthenticationWithBiometrics, error: &error) else {
if let error = error {
print("Face ID를 사용할 수 없음: \(error.localizedDescription)")
}
return
}
context.evaluatePolicy(.deviceOwnerAuthenticationWithBiometrics, localizedReason: "얼굴 인식을 사용하여 로그인합니다.") { (success, authenticationError) in
if success {
print("인증 성공")
} else {
if let error = authenticationError {
print("인증 실패: \(error.localizedDescription)")
} else {
print("인증 취소")
}
}
}
}
}
위의 코드에서 authenticateWithFaceID()
함수를 호출하여 Face ID를 사용하여 로그인 프로세스를 시작할 수 있습니다.
이처럼 Swift를 사용하면 Touch ID 및 Face ID 기능을 손쉽게 구현할 수 있습니다. 단지 기기에서 이러한 기능을 지원하는지 확인한 다음, LAContext
클래스의 evaluatePolicy(_:localizedReason:reply:)
메서드를 사용하여 인증을 수행하면 됩니다.
참고: Apple Developer Documentation - Touch ID Apple Developer Documentation - Face ID