-
Notifications
You must be signed in to change notification settings - Fork 1
iOS Integration
denys.kramar edited this page Jun 25, 2025
·
1 revision
- Download
PerchEyeFramework.xcframework - Drag framework into your Xcode project
- In Frameworks, Libraries, and Embedded Content set Embed & Sign
import PerchEyeFramework
class ViewController: UIViewController {
private var perchEye: PerchEyeSwift!
override func viewDidLoad() {
super.viewDidLoad()
// Initialize SDK
perchEye = PerchEyeSwift()
}
deinit {
perchEye.destroy() // Cleanup
}
}func detectFace(image: UIImage) -> ImageResult {
perchEye.openTransaction()
let result = perchEye.load(image: image)
switch result {
case .success:
print("Face detected")
case .faceNotFound:
print("No face found")
default:
print("Error: \(result)")
}
return result
}func enrollFace(image: UIImage) -> String? {
perchEye.openTransaction()
let result = perchEye.load(image: image)
if result == .success {
let hash = perchEye.enroll()
// Save hash for later verification
return hash
}
return nil
}func verifyFace(image: UIImage, storedHash: String) -> Float {
perchEye.openTransaction()
let result = perchEye.load(image: image)
if result == .success {
let similarity = perchEye.verify(hash: storedHash)
return similarity // 0.8+ recommended threshold
}
return 0.0
}// 1. Enroll a face
let enrolledHash = enrollFace(image: userPhoto)
// 2. Later, verify identity
let similarity = verifyFace(image: newPhoto, storedHash: enrolledHash)
let isAuthenticated = similarity >= 0.8