메인 콘텐츠로 건너뛰기

라이브니스 (생체 인식 셀피)

MarkdownChatGPTClaude

내장된 라이브니스 검증을 통한 생체 인식 셀피 촬영입니다. SDK는 SmartFrames를 통해 생체 인식적으로 유효한 프레임이 획득될 때까지 사용자를 안내하고, 이미지를 Base64 + JWT로 반환합니다.

기능

이 촬영 유형은 Liveness 기능을 사용합니다. Liveness 작동 방식에 대한 개념적 개요는 Liveness 기능 페이지를 참조하십시오.

작동 방식

SDK가 전체 촬영 세션을 관리합니다:

  1. SmartFrame 오버레이와 함께 카메라를 엽니다.
  2. 사용자가 프레임 내에 얼굴을 위치시키도록 안내합니다.
  3. 라이브니스를 검증합니다 — 사용자가 실제로 존재할 때만 세션이 완료됩니다.
  4. base64와 encrypted(JWT)가 포함된 SelfieResult(별칭 ResultCamera) 객체를 반환합니다.
카메라 모드 (스마트 촬영)

SDK에는 기본적으로 지능형 프레이밍과 자동 촬영이 활성화되어 있습니다. 빌더에서 다음과 같이 카메라 모드를 설정합니다:

unicoCheck.setSmartFrame(true)
unicoCheck.setAutoCapture(true)
라이브니스 촬영 시작
1단계 — AcessoBioManagerDelegate 구현

AcessoBioManagerDelegate는 SDK 라이프사이클 콜백을 처리합니다. 필수 메서드 4개를 구현하세요:

메서드호출 시점
onErrorAcessoBioManager(error)SDK 작동 중 오류 발생
onUserClosedCameraManually()사용자가 카메라를 수동으로 닫음
onSystemClosedCameraTimeoutSession()40초 세션 제한 도달
onSystemChangedTypeCameraTimeoutFaceInference()13초 동안 얼굴이 감지되지 않음 — 수동 캡처로 전환
class ViewController: UIViewController, AcessoBioManagerDelegate {
var unicoCheck: AcessoBioManager!

override func viewDidLoad() {
super.viewDidLoad()
unicoCheck = AcessoBioManager(viewController: self)
}

func onErrorAcessoBioManager(_ error: ErrorBio!) { }
func onUserClosedCameraManually() { }
func onSystemClosedCameraTimeoutSession() { }
func onSystemChangedTypeCameraTimeoutFaceInference() { }
}
필수 델리게이트 메서드

위의 4개 델리게이트 메서드는 프로젝트에서 모두 생성해야 합니다 (로직이 없어도). 그렇지 않으면 프로젝트가 컴파일되지 않습니다.

2단계 — SelfieCameraDelegate 및 AcessoBioSelfieDelegate 구현

이 델리게이트들은 셀피 촬영 결과 콜백을 처리합니다:

메서드설명
onSuccessSelfie(result)촬영 성공 — base64(미리 보기)와 encrypted(API용 JWT)가 포함된 SelfieResult 반환
onErrorSelfie(errorBio)촬영 실패 — 코드와 설명이 포함된 ErrorBio 반환
토큰 만료

encrypted 생성과 API 제출 사이의 간격은 10분을 초과해서는 안 됩니다.

class ViewController: UIViewController, AcessoBioManagerDelegate,
SelfieCameraDelegate, AcessoBioSelfieDelegate {

func onSuccessSelfie(_ result: SelfieResult!) { }
func onErrorSelfie(_ errorBio: ErrorBio!) { }
}
3단계 — prepareSelfieCamera 및 open 호출

SDK 설정을 전달하며 prepareSelfieCamera를 호출합니다. 카메라가 준비되면 AcessoBioCameraOpenerDelegate와 함께 onCameraReady 이벤트가 트리거됩니다 — open() 메서드를 통해 카메라를 엽니다:

  • onCameraReady(cameraOpener) — 카메라 준비 완료; open(self) 호출.
  • onCameraFailed(message) — 카메라 준비 실패(ErrorPrepare는 ErrorBio의 확장입니다).
@IBAction func openCamera(_ sender: Any) {
unicoCheck.build().prepareSelfieCamera(self, config: YourUnicoConfigClass())
}

func onCameraReady(_ cameraOpener: AcessoBioCameraOpenerDelegate!) {
cameraOpener.open(self)
}

func onCameraFailed(_ message: ErrorPrepare!) { }

결과 처리에 대한 전체 내용은 결과 수신을 참조하세요.