Lewati ke konten utama

Liveness (selfie biometrik)

Pengambilan selfie biometrik dengan verifikasi liveness bawaan. SDK memandu pengguna hingga frame yang valid secara biometrik diperoleh melalui SmartFrames dan mengembalikan gambar dalam format Base64 + JWT.

Kapabilitas

Jenis pengambilan gambar ini menggunakan kemampuan Liveness. Untuk gambaran konseptual tentang cara kerja Liveness, lihat halaman kemampuan Liveness.

Cara kerjanya

SDK mengelola sesi pengambilan gambar secara penuh:

  1. Membuka kamera dengan overlay SmartFrame.
  2. Memandu pengguna untuk memposisikan wajah mereka di dalam bingkai.
  3. Memvalidasi liveness — sesi hanya selesai ketika pengguna hadir secara fisik.
  4. Mengembalikan objek ResultCamera dengan base64 dan encrypted (JWT).
Memulai pengambilan liveness
Langkah 1 — Implementasikan AcessoBioListener

AcessoBioListener menangani callback siklus hidup SDK. Implementasikan empat metode wajib berikut:

MetodeKapan dipanggil
onErrorAcessoBio(errorBio)Terjadi kesalahan saat operasi SDK
onUserClosedCameraManually()Pengguna menutup kamera secara manual
onSystemClosedCameraTimeoutSession()Batas waktu sesi telah tercapai — lihat Batas waktu sesi
onSystemChangedTypeCameraTimeoutFaceInference()Batas waktu inferensi wajah telah tercapai — beralih ke pengambilan manual — lihat Batas waktu sesi
val callback = object : AcessoBioListener {
override fun onErrorAcessoBio(errorBio: ErrorBio?) { }
override fun onUserClosedCameraManually() { }
override fun onSystemClosedCameraTimeoutSession() { }
override fun onSystemChangedTypeCameraTimeoutFaceInference() { }
}
Langkah 2 — Implementasikan iAcessoBioSelfie

iAcessoBioSelfie menangani callback hasil pengambilan selfie:

MetodeDeskripsi
onSuccessSelfie(result)Pengambilan berhasil — mengembalikan ResultCamera dengan base64 (pratinjau) dan encrypted (JWT untuk API)
onErrorSelfie(errorBio)Pengambilan gagal — mengembalikan ErrorBio dengan kode dan deskripsi
Kedaluwarsa token

Interval antara pembuatan encrypted dan pengirimannya ke API tidak boleh melebihi 10 menit.

val selfieListener = object : iAcessoBioSelfie {
override fun onSuccessSelfie(result: ResultCamera?) { }
override fun onErrorSelfie(errorBio: ErrorBio?) { }
}
Langkah 3 — Panggil prepareCamera

Setelah unicoCheckCamera diinisialisasi dan kedua listener diimplementasikan, panggil prepareCamera dengan meneruskan konfigurasi SDK dan SelfieCameraListener:

  • onCameraReady — kamera siap; panggil open dengan meneruskan selfieListener dari Langkah 2.
  • onCameraFailed — persiapan kamera gagal; tangani pesan kesalahan.
unicoCheckCamera
.prepareCamera(UnicoConfig(), object : SelfieCameraListener {
override fun onCameraReady(cameraOpener: UnicoCheckCameraOpener.Selfie?) {
cameraOpener?.open(selfieListener)
}
override fun onCameraFailed(message: String?) { }
})

Untuk penanganan hasil selengkapnya, lihat Menerima hasil.